2个程序间的消息传递
我正在看罗云彬的WINDOWS环境下32位汇编语言程序设计,看到第4章时,遇到这个问题
2个程序,名字分别为Send和Receive
Send这个程序通过SendMessage这个函数发WM_SETTEXT消息给Receive程序
2个程序片段如下:
Send:
.........
szReturn db 'SendMessage returned!',0
.........
invoke SendMessage,hWnd,WM_SETTEXT,0,addr szText
invoke MessageBox,NULL,offset szReturn,offset szCaption,MB_OK
.........
Receive:
.........
.elseif eax==WM_SETTEXT
invoke wsprintf,addr szBuffer,addr szReceive,lParam,lParam
invoke MessageBox,hWnd,offset szBuffer,offset szCaptionMain,MB_OK
问题如下:
Send程序调用了“invoke SendMessage,hWnd,WM_SETTEXT,0,addr szText”函数后,为什么不马上执行“invoke MessageBox,NULL,offset szReturn,offset szCaption,MB_OK”,而是要等Receive执行完“invoke MessageBox,hWnd,offset szBuffer,offset szCaptionMain,MB_OK”,按了OK,Receive的对话框消失后才执行“invoke MessageBox,NULL,offset szReturn,offset szCaption,MB_OK”
很简单的问题,写的长了点,请高手耐性看,谢谢