【发布时间】:2008-12-05 18:18:35
【问题描述】:
我正在编写一些代码,希望能够与任何窗口一起工作,例如通过 windows API、MFC、wxWidgets 等创建的窗口。
问题在于,对于某些事情,我需要使用创建窗口的同一线程,在许多情况下,它只是处于消息循环中。
我的第一个想法是将回调消息发布到窗口,然后当它使用其中一个参数和某种函数指针接收消息时,它将在我的代码中调用一个函数。但是似乎没有标准的 Windows 消息来执行此操作,并且我无法创建自己的消息,因为我不控制 Windows 代码,因此无法将所需的代码添加到消息处理程序以实现回调...
还有其他方法可以让创建窗口的线程进入我的函数吗?
编辑: 约翰 Z sugested 我迷上了 windows 消息。如果我这样做,是否有某种方法可以获取自定义消息的“ID”,而不会与窗口已有的任何自定义消息发生冲突?
我可能会这样做
WM_CALLBACK = WM_APP+1
但是如果我挂接的窗口已经使用 WM_APP+1 做了一些事情,我会遇到问题。
编辑2: 刚刚找到 RegisterWindowMessage :)
【问题讨论】: