环境:VC++6.0
在编写COM时(没有窗体),需要调用VB编写的OCX控件。
现在的状态:
通过菜单中的程序-〉向程序中追加->追加控件...
把想要得DialogCtl.ocx插入到程序里面,并且也生成了相应的类,.h与.cpp文件。
ocx的功能:
DisplayCondition (long nMsgId)//传入一个ID,根据ID显示对话框
EraseCondition() // 取消现实的对话框代码实现:
IdExternalDeviceCDlgControl cCDlgCtl;
cCDlgCtl.DisplayCondition(31815);执行时弹出错误。
请问各位高手
这种调用方式是不是错误的?
如何调用呢?是否需要初始化?
着急中!请帮忙解决,谢谢!
如果有实例就更好了
如果解决,立即给分!.
在编写COM时(没有窗体),需要调用VB编写的OCX控件。
现在的状态:
通过菜单中的程序-〉向程序中追加->追加控件...
把想要得DialogCtl.ocx插入到程序里面,并且也生成了相应的类,.h与.cpp文件。
ocx的功能:
DisplayCondition (long nMsgId)//传入一个ID,根据ID显示对话框
EraseCondition() // 取消现实的对话框代码实现:
IdExternalDeviceCDlgControl cCDlgCtl;
cCDlgCtl.DisplayCondition(31815);执行时弹出错误。
请问各位高手
这种调用方式是不是错误的?
如何调用呢?是否需要初始化?
着急中!请帮忙解决,谢谢!
如果有实例就更好了
如果解决,立即给分!.
例如:
ID 5182
对应弹出的状态对话框里面显示的文字: 正在载入,请稍等!
现在的问题是:在一个没有窗体的com下,去掉用这个vb编写的ocx
cCDlgCtl.Create(...);
cCDlgCtl.DisplayCondition(31815);
nRelt = cCDlgCtl.Create(NULL,WS_POPUP,rect,NULL,100);
由于这是个没有窗体的com控件,而调用的ocx却要显示一个状态对话框,
所以第四个参数(CWnd* pParentWnd),应该填什么呢?
在执行上面的cCDlgCtl.Create(NULL,WS_POPUP,rect,NULL,100);
时,产生错误。
Warning: calling DestroyWindow in CWnd::~CWnd; OnDestroy or PostNcDestroy in derived class will not be called.
错误代码吗?
主要就是这些了,还有一些是如:C:\WINDOWS\system32\wsock32.dll,C:\WINDOWS\system32\ws2_32.dll','C:\WINDOWS\system32\ws2help.dll,'C:\WINDOWS\system32\msvcp60.dll,C:\WINDOWS\system32\mswsock.dll,C:\WINDOWS\system32\dnsapi.dll,C:\WINDOWS\system32\winrnr.dll,C:\WINDOWS\system32\wldap32.dll,C:\WINDOWS\system32\mswsock.dll,C:\WINDOWS\system32\winrnr.dll,C:\WINDOWS\system32\wldap32.dll,C:\WINDOWS\system32\rasadhlp.dll,C:\Program Files\Common Files\System\ado\msado15.dll,C:\WINDOWS\system32\msdart.dll',C:\WINDOWS\system32\comdlg32.dll,C:\WINDOWS\system32\xpsp2res.dll,C:\Program Files\Common Files\System\Ole DB\oledb32.dll,C:\Program Files\Common Files\System\Ole DB\oledb32r.dll,C:\WINDOWS\system32\msjetoledb40.dll,C:\WINDOWS\system32\msjet40.dll,C:\WINDOWS\system32\mswstr10.dll,C:\WINDOWS\system32\msjter40.dll,C:\WINDOWS\system32\msjint40.dll,C:\WINDOWS\system32\mswdat10.dll,C:\WINDOWS\system32\comsvcs.dll',C:\WINDOWS\system32\colbact.dll',C:\WINDOWS\system32\mtxclu.dll' ,'C:\WINDOWS\system32\clusapi.dll' ,,'C:\WINDOWS\system32\resutils.dll' ,'C:\WINDOWS\system32\userenv.dll' ,'C:\WINDOWS\system32\mswdat10.dll','C:\WINDOWS\system32\msjtes40.dll','C:\WINDOWS\system32\vbajet32.dll' ,'C:\WINDOWS\system32\expsrv.dll'等载入了,但没有发现适合的符号。
thread 0xEA4 終了、終了code゙ 0 (0x0)。
thread 0xEA8 終了、終了code゙ 0 (0x0)。
thread 0xEA0 終了、終了code 0 (0x0)。
thread 0xEB0 終了、終了code 0 (0x0)。
thread 0xEB4 終了、終了code 0 (0x0)。
thread 0xEB8 終了、終了code 0 (0x0)。'C:\Program Files\VSResizer\Control\Vsocx6.ocx' ,'C:\WINDOWS\system32\msi.dll' ,'C:\Program Files\FujiFilm\IIP\System\Threed20.ocx' ,'C:\WINDOWS\system32\winmm.dll'已经载入,但是没有发现适合的符号。
例外処理VCTest.exe,产生: (KERNEL32.DLL)0xC000008F: Float Inexact Result。这就是上面所有的错误。
再次谢谢回答!
com里是没有窗体的 还是想别的办法吧