关于接收消息的问题(尚有疑问,未完待续)

由于接收消息必须要有hwnd,也就是需要有个窗口对应才能接收消息,但有些情况下不需要这个窗口却又想要能够接收消息,找了下,大概有这么些办法:

1、在一个BCB版块看到有个人提问在dll中不用窗口怎么接收消息的一个回答:

自定义一个窗口句柄:
  申请:AllocateHWnd   
  释放:DeallocateHWnd   
  就可以接受和发送消息啦

2、建立一个普通的隐藏窗口,只用于处理消息,不干其它事情

3、建立一个“消息窗口(Message-Only窗口)”,这种窗口仅仅用于处理消息,而不能被显示出来。

在创建时指定CreateWindowEx的参数hwndParent为HWND_MESSAGE.   或在创建窗口后SetParent(hWnd,   HWND_MESSAGE);即可建立一个“消息窗口”

posted @ 2012-06-15 12:38  Mingxx  阅读(277)  评论(0编辑  收藏  举报