Activex控件奇怪问题

endergo 2009-07-24 05:28:00
1.本人做了一个MDI的activex控件,在IE和窗体应用程序中可以正常使用
2.现在由于需要将该控件集成到WPF中,创建的是WPF application时也可以正常使用,
3.但创建的是WPF Browser application程序时,出错.
调用如下:
System.Windows.Forms.Integration.WindowsFormsHost host = new System.Windows.Forms.Integration.WindowsFormsHost();
AxzebdemrLib.Axzebdemr ax = new AxzebdemrLib.Axzebdemr();//此处为activex控件
host.Child = ax;
抛出System.Reflection.TargetInvocationException异常.
Additional information: Unable to get the window handle for the 'Axzebdemr' control. Windowless ActiveX controls are not supported
4.但如果引用到的是activex的debug版本,可以正常运行
5.查看了debug和release的,设置不同的地方就是release,增加了代码优化和运行时链接库的方式不一致.
有尝试去掉release的代码优化,依然报错.
请各位大侠帮忙!谢谢!
...全文
121 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
firmbird 2009-07-28
  • 打赏
  • 举报
回复
从错误描述看是因为控件的窗体句柄是空的。

AxzebdemrLib.Axzebdemr ax = new AxzebdemrLib.Axzebdemr();

上面的代码只是生成了控件实例,并没有为控件创建窗体句柄,所以很怀疑你说的在Debug下可以正常运行。
在Debug下窗体句柄有可能是一个随机值(未初始化),程序可能可以运行,但应该是不正常的。
bluvie141 2009-07-28
  • 打赏
  • 举报
回复
初始化窗口时,屏蔽命令参数传递
endergo 2009-07-24
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 oyljerry 的回复:]
WPF程序是否也是release版本...
[/Quote]
debug和release下都不行
bluvie141 2009-07-24
  • 打赏
  • 举报
回复
哇,你们用得这么前卫啊 WPF Browser application + activex
南昼辰 2009-07-24
  • 打赏
  • 举报
回复
顶。
oyljerry 2009-07-24
  • 打赏
  • 举报
回复
WPF程序是否也是release版本...

3,245

社区成员

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

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