Windows應用程序信息傳遞—消息機制

1.發送消息方

        函數:LRESULT SendMessage(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM IParam)。

        第一個參數是將發送的目的應用程序或者對象的句柄,可通過GetForegroundWindow()獲得當前窗口句柄,也可通過上級對象調用的方式獲取該句柄。

        第二個參數是指發送的消息,需要在發送方和接收方有同樣的消息。常見的雙方同時#define WM_MYMESSAGE    WM_USER+101,也可在stdafx.h文件中定義。WM_MYMESSAGE 是要發送的消息。

       (WPARAM wParam,LPARAM IParam)是兩個要傳遞的參數。可以這樣寫WPARAM)a,(LPARAM)b。a,b是傳遞的參數。


2.接收方響應消息

        定義要響應消息的函數: afx_msg void  OnResponseFunction();在頭文件的AFX_MSG中添加。

        在消息映射BESIN_MESSAGE_MAP中添加ON_MESSAGE(WM_MYMESSAGE, OnResponseFunction),把消息和要響應的函數對應起來。

        在響應消息函數LRESULT OnResponseFunction(WPARAM wParam, LPARAM lParam)中添加響應內容。


3.整個過程是單線程的。發送方等待接收方處理完消息響應後,才進行下一步操作。

發佈了21 篇原創文章 · 獲贊 15 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章