首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

bcb 写的DLL 是否可以实现消息泵?解决方法

2012-02-09 
bcb 写的DLL 是否可以实现消息泵? - C++ Builder / Windows SDK/APIbcb开发的一个DLL,支持VCL,但是没有固

bcb 写的DLL 是否可以实现消息泵? - C++ Builder / Windows SDK/API
bcb开发的一个DLL,支持VCL,但是没有固定的主窗口,就是DLL中有3个Form,导出了一个函数ShowForm(int number),然后如果number为1,则new一个From1的窗体,然后ShowModal一下,如果number为2,那么就new一个Form2显示一下,就是没有固定的主窗口,现在想在DLL里面实现消息泵,就是如果这个DLL接收了某个消息WM_MSG1,然后就New 一个Form3显示出来,请DLL中实现过消息泵的高手指点一下

[解决办法]
完全可以,但是必须要与调用程序约定清楚,要实现消息的处理首先要有一个独立的线程资源。
[解决办法]
Dll内部用AllocateHWnd创建一个隐藏窗口。
然后进出该窗口的句柄。
内部处理下消息不同的消息响应不同的代码就可以了。

具体可参考TTimer的源代码。

热点排行