DLL 如何捕获OCX的事件

flyflence 2014-03-14 09:20:13
现在在搞个JNI,JAVA调DLL,DLL内嵌了个OCX
遇到个问题,DLL内调OCX接口后收不到事件,但如果在接完OCX接口后弹个MessageBox出来,OCX的事件就可以收到了。
很奇怪,怀疑是要窗口,可是我的OCX本身已经放在一个Dialog里了,还有个奇怪的现像是我把那个嵌了OCX的窗口show出来,
那个窗口会卡死无响应。
求大侠。
...全文
193 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
rogerhyh 2015-05-20
  • 打赏
  • 举报
回复
这个比较费解,问问题就想到要别人帮忙,解决了又不吭一声分享一下啊
u010628300 2014-08-15
  • 打赏
  • 举报
回复
引用 6 楼 flyflence 的回复:
自己找到办法了,结帖
怎么解决的 可以分享一下吗?最近也遇到类似的问题了。
flyflence 2014-03-18
  • 打赏
  • 举报
回复
自己找到办法了,结帖
flyflence 2014-03-17
  • 打赏
  • 举报
回复
有没有大侠知道顺着我这种的开发方式实现在DLL里捕获OCX事件的呀,我感觉已经很近了,就差了一两步就可以了,现在事件需要弹个MessageBox才能收到
flyflence 2014-03-15
  • 打赏
  • 举报
回复
引用 3 楼 worldy 的回复:
你必须从事件接口中派生一个类 或者按http://blog.csdn.net/worldy/article/details/12770709的介绍,创建Sink接口
没有其它智能点的方法么,因为我插入OCX后可以直接生成OCX对像的类,右击OCX也可以添加OCX的事件处理函数, 但是从事件接口中派生个类就让我有点摸不着头脑了,能否帮忙说的详细些
worldy 2014-03-14
  • 打赏
  • 举报
回复
你必须从事件接口中派生一个类 或者按http://blog.csdn.net/worldy/article/details/12770709的介绍,创建Sink接口
flyflence 2014-03-14
  • 打赏
  • 举报
回复
引用 1 楼 ouyh12345 的回复:
响应OCX事件是需要窗口的 在dll启动一个线程并处理线程消息,把线程id传入OCX里,OCX发线程消息
我建了个窗口,并在那个窗口里插入OCX了,按理来说算是有窗口了吧
ouyh12345 2014-03-14
  • 打赏
  • 举报
回复
响应OCX事件是需要窗口的 在dll启动一个线程并处理线程消息,把线程id传入OCX里,OCX发线程消息

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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