1.寫乙個hello world程式
/*引數說明
* hinstance hinstance:程式可執行模組的控制代碼(記憶體中的.exe檔案)
* hinstance hprevinstance:在win32程式中總是為null.
* lpstr lpcmdline:命令列引數組成的乙個單字串.不包括程式名字.
* int ncmdshow:乙個將要傳遞給showwindow()的整數
*/#include int winapi winmain(hinstance hinstance, hinstance hprevinstance,
lpstr lpcmdline, int ncmdshow)
說明:1.hinstance用作裝入資源或其它的以模組為單位的任務.乙個模組是乙個裝入到你程式的exe或者dll.
2.winapi指定呼叫規則並被定義為_stdcall
2.寫乙個視窗程式
#include const char g_szclassname = "mywindowclass";
//視窗過程,處理訊息迴圈送來的訊息
lresult callback wndproc(hwnd hwnd, uint msg, wparam wparam, lparam lparam)
return 0;
}//hwnd 訊息相應的視窗的視窗控制代碼,不同的視窗有不同的視窗過程
//windows系統中,螢幕上的視窗是以分層次的父視窗,子視窗的形式來組織的.
//如乙個視窗中有乙個按鈕時候,按鈕就是子視窗,包含它的視窗就是父視窗
//winmain是windows程式的入口函式
int winapi winmain(hinstance hinstance, hinstance hprevinstance, lpstr lpcmdline, int ncmdshow)
//第二步:建立視窗
hwnd = createwindowex(
ws_ex_clientedge,
g_szclassname,
"視窗已經建立",
cw_usedefault, cw_usedefault, 240, 120,
null, null, hinstance, null);
if(hwnd == null)
showwindow(hwnd, ncmdshow);
updatewindow(hwnd);
//第三步:訊息迴圈
while(getmessage(&msg, null, 0, 0) > 0)
return msg.wparam;
}
Windows 程式內部執行原理
2.應用程式 作業系統 計算機裝置硬體互動 windows程式設計完全是基於訊息的事件驅動模式 使用者需要完成某種功能,會呼叫os 某種支援,os將使用者的需要包裝成訊息,投遞到應用程式訊息對列中,應用程式從訊息對列取走訊息,做出響應 os感知裝置的變化 如滑鼠移動,鍵盤按下,並知道具體資訊 表示o...
windows 下程式的執行原理
在windows os下,資源管理器就如同linux下的shell,它是包圍在作業系統核心周圍的乙個應用程式。其實在linux系統下的gui,也是通過呼叫shell命令來實現其基本功能的,只不過是在shell上面又包裝了一件 華麗的外衣 讓使用者操作起來更加方便而已了。資源管理器作為使用者和作業系統...
學習筆記 windows程式執行原理
作業系統將每個事件都包裝成乙個稱為訊息的結構體msg來傳遞給應用程式,msg結構定義如下 typedef struct tagmsg msg 關於控制代碼 控制代碼 handle 資源的標識。作業系統要管理和操作這些資源,都是通過控制代碼來找到對應的資源。按資源的型別,又可將控制代碼細分成圖示控制代...