Activex控件的开发,后期测试

txthunder 2010-03-23 05:08:12

Activex控件的开发,后期测试
有没有人出现过这种情况,ActiveX控件开发完后,在VC6的ActiveX test container测试正常
建立一个mfc对话框程序进行测试出现不能初始化的问题
而在C#的windows应用程序测试也正常。
写入html,用浏览器测试也正常。
不清楚问题出在哪儿了,是MFC的问题?
...全文
446 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
txthunder 2010-04-08
  • 打赏
  • 举报
回复
根据调试的结果看来,是由于ActiveX控件的固有属性出错导致
ActiveX控件的初始化错误。 通过不断DISPID的换算查找发现错误很多
但是这些代码都是向导自动生成的,不知道为什么会出错。
想了下,由于外观属性不是控件的需求,所以将所有属性全部注销掉了。
编译链接,在mfc中测试,竟然好了。看来控件的固有属性可能相互之间有冲突。(当时偷懒把所有属性都添加了)
ok,结贴。
txthunder 2010-04-07
  • 打赏
  • 举报
回复
发现了一些问题,在我使用mfc的dialog来测试ActiveX控件时,每次打开工程都会提示
Control IDC_MILVIEW1 could not reload its state from its data saved from the last time the dialog editor was used.
The control will be uninitialized on the dialog.
看来还是属性出的问题,但是不能具体确定是什么属性出了问题。
我将控件注销再重新注册后还是这么提示的。
附,再次在html和c#里测试正常。不明白是什么原因。
txthunder 2010-04-07
  • 打赏
  • 举报
回复
检查了一下,没有重复的
我很奇怪的是问什么不能在mfc里运行?
hbs_biscuit 2010-03-28
  • 打赏
  • 举报
回复
你看一下这个控件的 idl 或者 odl文件 dispatchid 有没有重复的,是不是你手改过 接口文件呢
txthunder 2010-03-26
  • 打赏
  • 举报
回复
有人遇到这样的问题么?
加AfxOleInit()没有用啊
我都加到 m_App的构造函数里了,还是不行的。
sgzwiz 2010-03-25
  • 打赏
  • 举报
回复
AfxOleInit()
txthunder 2010-03-25
  • 打赏
  • 举报
回复
加了AfxOleInit()
没用
txthunder 2010-03-24
  • 打赏
  • 举报
回复
有ole控件,我就是为了测这个控件才拿一个dialog来测他的。
控件不就是直接拖进来就能用么,应该没什么参数吧。
red-fly 2010-03-24
  • 打赏
  • 举报
回复
InitNew or Load on OLE control {B6C9050D-3FD2-4573-93B5-BFF9FE356EAF} failed.
-------------------------------------------------------------
是不是上面有什么ole控件?是不是没有调用相关的初始化函数?是不是你的dialog程序上有richedit控件?
txthunder 2010-03-24
  • 打赏
  • 举报
回复
不好意思,我的组件封装的很大,属于胖客户端类型的。
能不能给我讲讲是哪儿错了,我自己试试。
txthunder 2010-03-24
  • 打赏
  • 举报
回复
想了很长时间,感觉6L说的有道理,gw_net认为是属性错误了
我查了下很有可能是IFontDisp、IPictureDisp这两个接口的问题。
在编译时出现了警告,
F:\ヘッミト\WorkSpace\vc6\MilOpenGL\MilOpenGL.idl(66) : warning MIDL2039 : interface does not conform to [oleautomation] attribute : [ Parameter 'pFont' of Procedure 'putref_Font' ( Interface 'IMilView' ) ]
F:\ヘッミト\WorkSpace\vc6\MilOpenGL\MilOpenGL.idl(68) : warning MIDL2039 : interface does not conform to [oleautomation] attribute : [ Parameter 'pFont' of Procedure 'put_Font' ( Interface 'IMilView' ) ]
F:\ヘッミト\WorkSpace\vc6\MilOpenGL\MilOpenGL.idl(70) : warning MIDL2039 : interface does not conform to [oleautomation] attribute : [ Parameter 'ppFont' of Procedure 'get_Font' ( Interface 'IMilView' ) ]
F:\ヘッミト\WorkSpace\vc6\MilOpenGL\MilOpenGL.idl(106) : warning MIDL2039 : interface does not conform to [oleautomation] attribute : [ Parameter 'pMouseIcon' of Procedure 'putref_MouseIcon' ( Interface 'IMilView' ) ]
F:\ヘッミト\WorkSpace\vc6\MilOpenGL\MilOpenGL.idl(108) : warning MIDL2039 : interface does not conform to [oleautomation] attribute : [ Parameter 'pMouseIcon' of Procedure 'put_MouseIcon' ( Interface 'IMilView' ) ]
F:\ヘッミト\WorkSpace\vc6\MilOpenGL\MilOpenGL.idl(110) : warning MIDL2039 : interface does not conform to [oleautomation] attribute : [ Parameter 'ppMouseIcon' of Procedure 'get_MouseIcon' ( Interface 'IMilView' ) ]
F:\ヘッミト\WorkSpace\vc6\MilOpenGL\MilOpenGL.idl(112) : warning MIDL2039 : interface does not conform to [oleautomation] attribute : [ Parameter 'pPicture' of Procedure 'putref_Picture' ( Interface 'IMilView' ) ]
F:\ヘッミト\WorkSpace\vc6\MilOpenGL\MilOpenGL.idl(114) : warning MIDL2039 : interface does not conform to [oleautomation] attribute : [ Parameter 'pPicture' of Procedure 'put_Picture' ( Interface 'IMilView' ) ]
F:\ヘッミト\WorkSpace\vc6\MilOpenGL\MilOpenGL.idl(116) : warning MIDL2039 : interface does not conform to [oleautomation] attribute : [ Parameter 'ppPicture' of Procedure 'get_Picture' ( Interface 'IMilView' ) ]
查MSDN上讲这是vc6的一个bug,要将这两个接口修改成继承双接口的。我感觉自己修改库没什么把握,先等等各位的高见。
让我很不解的是为什么在Html里能跑,在c#能跑,就是不能在c++ 里跑呢?
gw_net 2010-03-23
  • 打赏
  • 举报
回复
调用Invoked failed on DISPID fffffdfd这个属性时出错

你可以把代码发给我,我帮你调试一下,
gw_net@163.com
txthunder 2010-03-23
  • 打赏
  • 举报
回复
Loaded 'ntdll.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\kernel32.dll', no matching symbolic information found.
Loaded symbols for 'C:\WINDOWS\system32\MFC42D.DLL'
Loaded symbols for 'C:\WINDOWS\system32\MSVCRTD.DLL'
Loaded 'C:\WINDOWS\system32\gdi32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\user32.dll', no matching symbolic information found.
Loaded symbols for 'C:\WINDOWS\system32\MFCO42D.DLL'
Loaded 'C:\WINDOWS\system32\ole32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\advapi32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\rpcrt4.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\secur32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\msvcrt.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\oleaut32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\shimeng.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\imm32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\lpk.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\usp10.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\mfc42loc.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\comctl32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\msctf.dll', no matching symbolic information found.
Loaded 'C:\Program Files\360safe\safemon\safemon.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\shell32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\shlwapi.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\msimg32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\wininet.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\crypt32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\msasn1.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\psapi.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\version.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\ws2_32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\ws2help.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\urlmon.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.2982_x-ww_ac3f9c03\comctl32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\apphelp.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\msctfime.ime', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\IMJP12.IME', no matching symbolic information found.
Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.4053_x-ww_e6967989\msvcr80.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.4053_x-ww_e6967989\msvcp80.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\IMJP12K.DLL', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\UXTHEME.DLL', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\clbcatq.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\comres.dll', no matching symbolic information found.
Loaded symbols for 'F:\ヘッミト\WorkSpace\vc6\MilOpenGL\Debug\MilOpenGL.dll'
Loaded 'C:\WINDOWS\system32\comdlg32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\olepro32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\opengl32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\glu32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\ddraw.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\dciman32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\glut32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\winmm.dll', no matching symbolic information found.
Loaded symbols for 'C:\WINDOWS\system32\MSVCP60D.DLL'
ATL: IPersistStreamInitImpl::Load
ATL: CPropertyHelper::PutProperty
Loaded 'C:\WINDOWS\system32\sxs.dll', no matching symbolic information found.
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
Loaded 'C:\WINDOWS\system32\xpsp2res.dll', no matching symbolic information found.
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: Invoked failed on DISPID fffffdfd
InitNew or Load on OLE control {B6C9050D-3FD2-4573-93B5-BFF9FE356EAF} failed.
>>> Result code: 0x80004005
Warning: CreateDlgControls failed during dialog init.
Info: AfxDllCanUnloadNow returning S_OK
The thread 0x490 has exited with code 0 (0x0).
The thread 0x157C has exited with code 0 (0x0).
The thread 0x1524 has exited with code 0 (0x0).
The thread 0x1064 has exited with code 0 (0x0).
The program 'F:\ヘッミト\WorkSpace\vc6\Test323\Debug\Test323.exe' has exited with code 0 (0x0).
txthunder 2010-03-23
  • 打赏
  • 举报
回复
不行,对话框根本就没有出来。
调试的信息是
Loaded 'ntdll.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\kernel32.dll', no matching symbolic information found.
Loaded symbols for 'C:\WINDOWS\system32\MFC42D.DLL'
Loaded symbols for 'C:\WINDOWS\system32\MSVCRTD.DLL'
Loaded 'C:\WINDOWS\system32\gdi32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\user32.dll', no matching symbolic information found.
Loaded symbols for 'C:\WINDOWS\system32\MFCO42D.DLL'
Loaded 'C:\WINDOWS\system32\ole32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\advapi32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\rpcrt4.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\secur32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\msvcrt.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\oleaut32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\shimeng.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\imm32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\lpk.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\usp10.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\mfc42loc.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\comctl32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\msctf.dll', no matching symbolic information found.
Loaded 'C:\Program Files\360safe\safemon\safemon.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\shell32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\shlwapi.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\msimg32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\wininet.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\crypt32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\msasn1.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\psapi.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\version.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\ws2_32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\ws2help.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\urlmon.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.2982_x-ww_ac3f9c03\comctl32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\apphelp.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\msctfime.ime', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\IMJP12.IME', no matching symbolic information found.
Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.4053_x-ww_e6967989\msvcr80.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.4053_x-ww_e6967989\msvcp80.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\IMJP12K.DLL', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\UXTHEME.DLL', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\clbcatq.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\comres.dll', no matching symbolic information found.
Loaded symbols for 'F:\ヘッミト\WorkSpace\vc6\MilOpenGL\Debug\MilOpenGL.dll'
Loaded 'C:\WINDOWS\system32\comdlg32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\olepro32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\opengl32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\glu32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\ddraw.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\dciman32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\glut32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\winmm.dll', no matching symbolic information found.
Loaded symbols for 'C:\WINDOWS\system32\MSVCP60D.DLL'
ATL: IPersistStreamInitImpl::Load
ATL: CPropertyHelper::PutProperty
Loaded 'C:\WINDOWS\system32\sxs.dll', no matching symbolic information found.
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
Loaded 'C:\WINDOWS\system32\xpsp2res.dll', no matching symbolic information found.
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: CPropertyHelper::PutProperty
ATL: Invoked failed on DISPID fffffdfd
InitNew or Load on OLE control {B6C9050D-3FD2-4573-93B5-BFF9FE356EAF} failed.
>>> Result code: 0x80004005
Warning: CreateDlgControls failed during dialog init.
Info: AfxDllCanUnloadNow returning S_OK
The thread 0x490 has exited with code 0 (0x0).
The thread 0x157C has exited with code 0 (0x0).
The thread 0x1524 has exited with code 0 (0x0).
The thread 0x1064 has exited with code 0 (0x0).
The program 'F:\ヘッミト\WorkSpace\vc6\Test323\Debug\Test323.exe' has exited with code 0 (0x0).
oyljerry 2010-03-23
  • 打赏
  • 举报
回复
调用AfxOleInit()等初始化
txthunder 2010-03-23
  • 打赏
  • 举报
回复
不会吧,mfc里建dlg程序托控件不需要初始化com库的啊。
webipstin 2010-03-23
  • 打赏
  • 举报
回复
是不是没初始化COM库

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧