作为win32程序的入口,WinMain函数的重要性不言而喻。
int WINAPI WinMain(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nShowCmd
)
WINAPI:标识符在WINDEF.H定义,语句为: #define WINAPI __stdcall,其它类似的宏还有WINAPI和CALLBACK
hinstance:
应用程序前实例的句柄。
hPrevlnstance:应用程序的先前实例的句柄。对于同一个程序打开两次,出现两个窗口第一次打开的窗口就是先前实例的窗口。对于一个32位程序,该参数总为NULL。
lpCmdLine:指向应用程序命令行的字符串的
指针,不包括执行文件名。获得整个命令行,参看GetCommandLine。
nCmdShow:指明窗口如何显示。
nCmdShow | 隐藏窗口并且激活另外一个窗口 |
SW_MINIMIZE | 最小化指定的窗口,并且激活在系统表中的顶层窗口 |
SW_RESTORE | 激活并显示窗口。如果窗口已经最小化或最大化,系统将以恢复到原来的尺寸和位置显示窗口(与SW_SHOWNORMAL相同) |
SW_SHOW | 激活一个窗口并以原来的尺寸和位置显示窗口 |
SW_SHOWMAXIMIZED | 激活窗口并且将其最大化 |
SW_SHOWMINIMIZED | 激活窗口并将其最小化(以图标显示) |
SW_SHOWMINNOACTIVE | 将一个窗口显示为图标。激活窗口维持活动状态 |
SW_SHOWNA | 以窗口的当前状态显示窗口。激活窗口保持活动状态 |
SW_SHOWNOACTIVATE | 以窗口的最近一次的尺寸和位置显示窗口。激活窗口维持激活状态 |
SW_SHOWNORMAL | 激活并显示窗口。如果窗口最大化或最小化,系统将其恢复到原来的尺寸和位置(与SW_RESTORE相同) |