MFC ActiveX OCX 中的消息问题

weichaogui weichaogui 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
本人用MFC ActiveX写了一个OCX,内部使用了多线程,如果在多线程中直接触发事件,那么会引起VB、C#、Delphi调用异常,因而改为在多线程中用SendMessage来触发事件。现在把OCX的属性改为INVISIBLEATRUNTIME后,OCX的m_hWnd总是为NULL,因此无法接收线程中Send的Message,为解决此问题,我在OCX的构造函数里RecreateControlWindow(),此时OCX的m_hWnd便不再为NULL,故能正常的接收Message然后触发事件。于是VB、C#、Delphi能正常接收事件了。可是在Delphi的调用中又出现了另一个问题,那就是把OCX拖到窗体,运行界面,啥也不干,然后关闭窗体,Delphi就出错了(是在Delphi的IDE界面下运行出错,如果直接运行exe便正常),通过调试定位,知道原因在于RecreateControlWindow()后,Delphi退出释放有问题。此问题困绕我好几天,无法解决,望各位高人指点迷津。
...全文

相关推荐

vc开发activex,ocx控件的很好的教程.rar

vc开发activex,ocx控件的很好的教程.rar

lonelyhaisong

VB6与VC6环境下Dbcom三维力控组件实操示例集

面向工业力反馈开发场景,提供开箱即用的Dbcom三维力控组件编程参考。包含两个独立可运行工程:VB6窗体项目支持按钮触发模拟力加载、滑块动态调节力阈值、实时力值曲线图表显示;VC6 MFC对话框项目采用C++类封装与消息映射机制,实现相同功能逻辑。所有代码已在对应IDE环境完成基础编译验证,无需手动注册OCX即可直接加载调试。配套DbComm.doc文档详述控件接口定义、属性方法列表、事件触发条件及典型力反馈配置步骤。资源包内含完整源码结构、工程文件、说明文档及部署提示文本,覆盖常见问题如OCX注册方式、多

算法是你的笨蛋

VC++ MFC实现OCX ActiveX定时闹钟控件及测试程序

ActiveX控件的概念起源于微软早期对OLE(对象链接与嵌入)和COM(组件对象模型)技术的推广。随着互联网的兴起,微软推出了ActiveX技术,允许开发者创建可以在Web浏览器中运行的软件组件,这些组件被称作ActiveX控件。最初的设计目标是让这些控件能够跨平台、跨语言使用,但主要在Windows平台上得到了广泛应用。ActiveX控件的使用使网页具有了更丰富的交互性,它们可以用来执行各种任务,从简单的图形展示到复杂的计算操作。

一筐猪的头发丝

MFC创建和使用OCX控件

之后会弹出tstcon32程序

百口可乐__

基于MFC的OCX控件开发教程及示例源代码

压缩包内含基于MFC的ActiveX控件开发pdf;示例包括1、ocx控件开发实现访问海康摄像头 云台控制 预置点设置等基本功能;2、web测试ocx控件相关功能接口,传参及属性设置等

沐阳2100
评论 8
收藏 已收藏
分享
返回顶部
weichaogui
ATL 3,248 成员 48,530 内容