程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> Hello, windows XP

Hello, windows XP

編輯:.NET實例教程
  學習windows programming這麼久,也做過一些小的程序。但是總感覺到自己沒有經過系統的學習,要用到什麼才學什麼。這樣雖然解決了問題,自己的知識還是雜亂的。從現在開始,我把自己放在0的位置,重新學習,期望能對Windows編程有系統的認識。
       還是從最簡單的開始,“Hello, Windows XP”。
 

#include <Windows.h>

int  WinMain(HINSTANCE hInstance, HINSTANCE hPreInstance, 
             LPSTR lpCmdLine, int nShowCmd)
...{
    MessageBox(NULL, TEXT("Hello, Windows XP!"), TEXT("go"), MB_OK);
    return 0;
}
#define WINAPI __stdcall

Windows程序的入口函數已經不是原來的main了,應該是WinMain。在前面加上WINAPI只是函數調用習慣的問題(calling convention)。如果不加就會彈出一條警告。
: warning C4007: ''WinMain'' : must be ''__stdcall''
WinMain的第一個參數hInstance是一個實例句柄。在Windows編程中,句柄就是用來對某個對象進行唯一標識的數字。注意這裡所說的對象可不是面向對象裡談到的對象哦。在這裡,hInstance 就是唯一標識程序對象的。第二個參數hPreInstance也是一個實例句柄。它是win16時期遺留下來的產物,在win32中都是NULL。第三個參數lpCmdLine是在命令行裡啟動程序時用來傳遞參數的。最後一個是nShowCmd,它指示了程序啟動時窗口的狀態。例如:最大化。
       函數體中掉用了MessageBox。掉用該函數會彈出一個窗口。這也是Windows編程中最簡單,也是最直接顯示窗口的方式。在參數中,沒個字符串都被包含在一個TEXT宏中,主要是考慮到UNICODE的問題。 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved