奇怪的PostMessage
使用PostMessage遇到的奇怪情况
步骤如下:
1. 正常使用了postmessage,
在一个线程中,使用postmessage 发送几条 自定义的消息给一个对话框,响应正常。
如: PostMessage(HWND, A_Msg,0,0);
2. 增加一个自定义消息,和已经使用的消息一样的流程。
发现 postmessage被执行了,但是对话框对应的响应的函数没有被执行。
检查代码,认为一切正常。
如: PostMessage(HWND, B_Msg,0,0); // update
......
PostMessage(HWND, B_Msg,0,0); // update
......
PostMessage(HWND, B_Msg,0,0); // update
这几条B_Msg 都不能被执行
3. 把不能正常工作的postmessage 里面的B_Msg消息换成 A_MSG,然后加上一个标记。
如: PostMessage(HWND, A_Msg, Is_B_Msg,0); // 在对话框中做特殊处理。
......
PostMessage(HWND, B_Msg,0,0); // update, 奇怪,这里发送的消息对话框接受到了
......
PostMessage(HWND, B_Msg,0,0); // update, 奇怪,这里发送的消息对话框接受到了
很奇怪啊,我不知道是什么原因,求解释。。