while(GetMessage(&msg,NULL,NULL,NULL))的处理
blldw 2002-01-24 09:59:09 MSG msg;
while(GetMessage(&msg,NULL,NULL,NULL))
{
switch(msg.message )
{
case WM_NOTIFY:
if(msg.wParam ==1)
cout <<"收到WM_NOTIFY消息\n";
break;
case WM_CLOSE:
cout <<"收到WM_CLOSE消息,按ENTER键退出\n";
cin.get ();
PostQuitMessage(0);
break;
}
}
这个消息处理函数在进程A中,我用进程B调用A,当我在进程B中用
PostThreadMessage(pi.dwThreadId,WM_NOTIFY,0,0)后,进程A并不是立即输出“收到WM_NOTIFY消息”,当我再在进程B中调用PostThreadMessage(pi.dwThreadId,WM_CLOSE,0,0)时,在进程A中按ENTER后,同时输出了<<"收到WM_NOTIFY消息“和“收到WM_CLOSE消息,按ENTER键退出",请问为什么啊?
写的有点乱,不好意思!!