在DLL中如何接收消息,它没有Handle 啊

meCAD 2009-04-17 04:08:38
在DLL中如何接收消息,它没有Handle 啊

请多多指教
...全文
212 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
fxworld 2009-04-23
  • 打赏
  • 举报
回复
用Window的钩子应该可以,在主程序中将窗口句柄传递给Dll
meCAD 2009-04-22
  • 打赏
  • 举报
回复
是这样的.我需要在DLL中使用一些API,比如说RegisterDeviceNotification
注册设备,去获得USB设备的插拔消息,因为需要在DLL中过滤消息,把正确的消息交给调用我的DLL的主程序
但是RegisterDeviceNotification的第一个参数就是Handle,所以就不知道这个函数怎么调用了.
jaffy 2009-04-22
  • 打赏
  • 举报
回复
DLL是用宿主程序进行调用的,直接传递参数就行了,为什么要传递消息呢?
ccrun.com 2009-04-22
  • 打赏
  • 举报
回复
在Dll中创建一个线程,EXE通过线程ID用PostThreadMessage和线程通信即可。
cczlp 2009-04-21
  • 打赏
  • 举报
回复
自己建立一个消息循环。
meCAD 2009-04-21
  • 打赏
  • 举报
回复
AllocateHWnd怎么用呢?
xjq2003 2009-04-20
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 littlestone08 的回复:]
dll本身当然没有handle,但是它里面中的类(生成的对象)有啊

AllocateHWnd函数就可以,如果用VC,就只好用API建立了一个window 句柄了
实在懒的话,可以直接用form
[/Quote]
没有试过,试试看
laowang2 2009-04-20
  • 打赏
  • 举报
回复
AllocateHWnd
littlestone08 2009-04-18
  • 打赏
  • 举报
回复
dll本身当然没有handle,但是它里面中的类(生成的对象)有啊

AllocateHWnd函数就可以,如果用VC,就只好用API建立了一个window 句柄了
实在懒的话,可以直接用form
fairchild811 2009-04-17
  • 打赏
  • 举报
回复
用不着吧,帮顶
meCAD 2009-04-17
  • 打赏
  • 举报
回复
太夸张了吧.搞个Form进去啊?
jame2001 2009-04-17
  • 打赏
  • 举报
回复
可產生一個hide 的 Form, 來接

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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