Windos 程式的生與死

2021-05-22 13:58:25 字數 766 閱讀 9994

windows程式的生與死

------摘自侯俊傑《深入淺出mfc》1、

程式的初始化過程中呼叫createwindow,為程式建立了乙個視窗,作為程式的螢幕舞台,createwindow產生視窗之後會送出wm_create直接給視窗函式,後者於是可以在此時做一些初始化操作(例如配置記憶體、開啟檔案、讀取初始資料)

2、在程式活著的過程中,不斷以getmessage從訊息佇列中抓取訊息,如果這個訊息是wm_quit,getmessage會傳回0而結束while迴圈,進而結束整個程式。

3、dispatchmessage通過windows user 模組的協助和監督,把訊息分派至視窗函式,訊息將在該處被判別並處理。

4、程式不斷進行2.3.的操作。

5、當使用者按下系統選單中的close命令項時,系統送出wm_close,通常程式的視窗函式不攔截此訊息,於是defwindowproc處理它。

6、defwindowproc收到wm_close後,呼叫destroywindow把視窗清除,destroywindow本身又會送出wm_destroy。

7、程式對wm_destroy的標準反應的是呼叫postquitmessage。

8、postquitmessage沒什麼其它的操作,就只送出wm_quit訊息,準備讓訊息迴圈中的getmessage取得,如步驟2,結束訊息迴圈。

Windows程式的生與死

windows程式分為 程式 和 ui資源 兩大部分最後以rc編譯器集成為乙個完整的exe檔案。以訊息為基礎,以事件驅動 message based,event driven 程式的開始與結束大致如下 1 程式初始化中呼叫createwindow,為程式建立乙個視窗,作為程式的螢幕舞台,create...

MFC程式的誕生與死亡

mfc程式的誕生與死亡 注 摘抄自候捷的 深入淺出mfc 第二版。程式的誕生 2.afxwinmain執行afxwininit,後者又呼叫afxinitthread,把訊息佇列盡量加大到96。6.cmyframewnd構造函式呼叫create,產生視窗種類,自行為我們註冊乙個名為 afxframeo...

乙個WinForm程式的生與死

如同嬰兒的降生,winform程式有乙個起點,那就是它的main函式 如同乙個青年的成長和一次次成功,乙個窗體中可以一次次的完成各種任務 如同人類的生生不息,乙個winform窗體可以孕育乙個新的窗體 如同老人的逝去,winform在經歷完我們的操作,退出最後乙個窗體。應用程式有其完整的生命週期。我...