WinMain 函式 (winbase.h)
圖形化 Windows 應用程式的使用者提供的進入點。
WinMain 是用於應用程式進入點的傳統名稱。 如需詳細資訊,請參閱。
語法
int __clrcall WinMain(
[in] HINSTANCE hInstance,
[in, optional] HINSTANCE hPrevInstance,
[in] LPSTR lpCmdLine,
[in] int nShowCmd
);
參數
[in] hInstance
類型:HINSTANCE
應用程式目前實例的句柄。
[in, optional] hPrevInstance
類型:HINSTANCE
應用程式上一個實例的句柄。 此參數一律 NULL。 如果您需要偵測是否有另一個實例存在,請使用 createMutex 函式
[in] lpCmdLine
類型:LPSTR
應用程式的命令行,不包括程序名稱。 若要擷取整個命令行,請使用 GetCommandLine 函式。
[in] nShowCmd
類型:int
控制窗口的顯示方式。 這個參數可以是任何可在 nCmdShow 參數中指定 ShowWindow 函式的值。
傳回值
類型:int
如果函式成功,在收到 WM_QUIT 訊息時終止,它應該傳回該訊息 wParam 參數中包含的結束值。 如果函式在進入訊息迴圈之前終止,它應該會傳回零。
言論
許多程式設計架構會使用 winMain 名稱
您的 WinMain 應該初始化應用程式、顯示其主視窗,然後輸入訊息擷取和分派迴圈,這是應用程式執行其餘部分的最上層控件結構。 當訊息收到 WM_QUIT 訊息時,終止訊息迴圈。 此時,您的 WinMain 應該結束應用程式,並傳回傳入 WM_QUIT 訊息 wParam 參數的值。 如果呼叫
ANSI 應用程式可以使用 WinMain 函式的 lpCmdLine 參數來存取命令行字串,但不包括程序名稱。 請注意,lpCmdLine 會使用 LPSTR 資料類型,而不是 LPTSTR 數據類型。 這表示 Unicode 程式無法使用 WinMain。 GetCommandLineW 函式可用來取得命令行做為 Unicode 字串。 某些程式設計架構可能會提供提供 Unicode 命令行的替代進入點。 例如,Microsoft Visual Studio C++編譯程式會針對 Unicode 進入點使用 wWinMain 名稱
例
下列程式代碼範例示範如何使用 WinMain
#include <windows.h>
int APIENTRY WinMain(HINSTANCE hInst, HINSTANCE hInstPrev, PSTR cmdline, int cmdshow)
{
return MessageBox(NULL, "hello, world", "caption", 0);
}
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
支援的最低伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平臺 | 窗戶 |
標頭 | winbase.h (包括 Windows.h) |
另請參閱
概念
其他資源
參考