WinMain

This function is called by the system as the initial entry point for WindowsCE-based applications.

int WINAPI WinMain(
HINSTANCE hInstance, 
HINSTANCE hPrevInstance, 
LPWSTR lpCmdLine, 
int nShowCmd ); 

Parameters

  • hInstance
    [in] Handle to the current instance of the application.

  • hPrevInstance
    [in] Handle to the previous instance of the application. For a Win32-based application, this parameter is always NULL.

    If you need to detect whether another instance already exists, create a uniquely named mutex using the CreateMutex function. CreateMutex will succeed even if the mutex already exists, but the GetLastError function will return ERROR_ALREADY_EXISTS. This indicates that another instance of your application exists, because it created the mutex first.

  • lpCmdLine
    [in] Pointer to a null-terminated string that specifies the command line for the application, excluding the program name.

  • nShowCmd
    [in] Specifies how the window is to be shown. This parameter can be one of the following values:

    Value Description
    SW_HIDE Hides the window and activates another window.
    SW_SHOW Activates a window and displays it in its current size and position.
    SW_SHOWNA Displays a window in its current state. The active window remains active.
    SW_SHOWNOACTIVATE Displays a window in its most recent size and position. The active window remains active.
    SW_SHOWNORMAL Activates and displays a window. If the window is minimized or maximized, the system restores it to its original size and position (same as SW_RESTORE).

Return Values

The exit value contained in that messages wParam parameter indicates success, and that the function terminates when it receives a WM_QUIT message. Zero indicates that the function terminates before entering the message loop.

Remarks

Your WinMain should initialize the application, display its main window, and enter a message retrieval-and-dispatch loop that is the top-level control structure for the remainder of the applications execution. Terminate the message loop when it receives a WM_QUIT message. At that point, your WinMain should exit the application, returning the value passed in the WM_QUIT messages wParam parameter. If WM_QUIT was received as a result of calling PostQuitMessage, the value of wParam is the value of the PostQuitMessage functions nExitCode parameter.

Requirements

Runs on Versions Defined in Include Link to
Windows CE OS 1.0 and later Winuser.h    

Note   This API is part of the complete Windows CE OS package as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM) and some devices may not support this API.

See Also

DispatchMessage, GetMessage, PostQuitMessage, TranslateMessage

 Last updated on Tuesday, July 13, 2004

© 1992-2000 Microsoft Corporation. All rights reserved.