Windows應用程式的訊息處理機制
(1)作業系統接收到應用程式的視窗訊息,將訊息投遞到該應用程式的訊息佇列中。
(2)應用程式在訊息迴圈中呼叫GetMessage函式從訊息佇列中取出一條一條的訊息。
取出訊息後,應用程式可以對訊息進行一些預處理,例如,放棄對某些訊息的響應,或者呼叫TranslateMessage產生新的訊息。
(3)應用程式呼叫DispatchMessage,將訊息回傳給作業系統。
訊息是由MSG結構體物件來表示的,其中就包含了接收訊息的視窗的控制程式碼。因此,DispatchMessage函式總能進行正確的傳遞。
(4)系統利用WNDCLASS結構體的lpfnWndProc成員儲存的視窗過程函式的指標呼叫視窗過程,對訊息進行處理(“即系統給應用程式傳送了訊息”)。
流程圖如下:
相關文章
- Android應用程式訊息處理機制Android
- Android應用程式訊息處理機制(Looper、Handler)分析AndroidOOP
- MFC應用程式中處理訊息的順序
- Looper中的訊息佇列處理機制OOP佇列
- Windows訊息機制概述Windows
- Android中的非同步訊息處理機制Android非同步
- 原始碼分析:Android訊息處理機制原始碼Android
- Cloud Foundry架構和訊息處理機制Cloud架構
- Handler訊息處理機制原始碼解析 上原始碼
- Android 訊息處理機制:Handler|MessageAndroid
- Service初探與非同步訊息處理機制非同步
- 簡析Windows訊息機制Windows
- windows訊息機制與例項Windows
- Windows訊息機制初談 (轉)Windows
- 深入理解Android非同步訊息處理機制Android非同步
- 如何生動形象的理解Android Handler訊息處理機制Android
- OC訊息機制,訊息轉發機制
- 訊息機制
- Android訊息處理機制(Handler、Looper、MessageQueue與Message)AndroidOOP
- MFC訊息響應機制分析 (轉)
- Linux訊號處理機制Linux
- React應用裡Invalid hook call錯誤訊息的處理ReactHook
- 詳解 Handler 訊息處理機制(附自整理超全 Q&A)
- Android非同步訊息處理機制詳解及原始碼分析Android非同步原始碼
- 《C++ Primer》 P415 訊息處理機制 原始碼C++原始碼
- iOS訊息機制iOS
- SAP訊息機制
- 三、訊息的可靠處理
- Android的訊息機制Android
- WebRTC中的訊息機制Web
- WTL的訊息機制 (轉)
- php ActiveMQ的傳送訊息,與處理訊息PHPMQ
- Linux訊號機制與訊號處理Linux
- windows phone 8 鎖屏介面 顯示應用程式的訊息提醒Windows
- Android程式間通訊–訊息機制及IPC機制實現薦Android
- 訊息機制篇——初識訊息與訊息佇列佇列
- IOS 訊息推送處理iOS
- JMS java 訊息機制Java