Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?
Hasło nie zostało zweryfikowane
Niniejsze hasło zostało opracowane, jednak nie zostało ono zweryfikowane przez administrację serwisu. Jeżeli znalazłeś błędy merytoryczne w niniejszym dokumencie, prosimy o ich zgłoszenie na forum w dziale Znalezione błędy.
Opracował: jankowalski25
Biblioteki C/C++

WinMain

[funkcja] Funkcja zdefiniowana przez programistę, od której program rozpoczyna działanie.

Składnia

C/C++
#include <windows.h>

int CALLBACK WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow );

Argumenty

hInstanceUchwyt do obecnej instancji programu.
hPrevInstanceUchwyt do poprzedniej instancji programu. Wartość tego argumentu wynosi zawsze NULL. Aby określić, czy inna instancja tego programu obecnie istnieje, należy utworzyć muteks o unikalnej nazwie używając funkcji CreateMutex.
lpCmdLineArgumenty podane w wierszu polecenia dla programu (bez nazwy programu). Aby pobrać całe polecenie, wywołaj funkcję » WinAPIGetCommandLine.
nCmdShowOkreśla, w jaki sposób okno zostanie wyświetlone. Wartość tego argumentu może być jedną z poniższych stałych:
NazwaWartośćZnaczenie
SW_HIDE0Ukrywa okno tego programu i aktywuje inne okno.
SW_MAXIMIZE3Maksymalizuje określone okno.
SW_MINIMIZE6Minimalizuje określone okno i aktywuje następne okno na osi Z.
SW_RESTORE9Aktywuje i wyświetla okno. Jeśli okno jest zminimalizowane lub zmaksymalizowane, system przywraca oryginalne rozmiary oraz pozycję tego okna. Program powinien użyć tej flagi podczas przywracania zminimalizowanego okna.
SW_SHOW5Aktywuje okno i wyświetla je w bieżących rozmiarach i pozycji.
SW_SHOWMAXIMIZED3Aktywuje okno i wyświetla je jako zmaksymalizowane.
SW_SHOWMINIMIZED2Aktywuje okno i wyświetla je jako zminimalizowane.
SW_SHOWMINNOACTIVE7Wyświetla okno jako zminimalizowane. Efekt jest podobny do SW_SHOWMINIMIZED, ale okno nie jest aktywowane.
SW_SHOWNA8Wyświetla okno w bieżących rozmiarach i pozycji. Efekt jest podobny do SW_SHOW, ale okno nie jest aktywowane.
SW_SHOWNOACTIVATE4Wyświetla okno w ostatnich rozmiarach i pozycji. Efekt jest podobny do SW_SHOWNORMAL, ale okno nie jest aktywowane.
SW_SHOWNORMAL1Aktywuje i wyświetla okno. Jeśli okno jest zminimalizowane lub zmaksymalizowane, system przywraca oryginalne rozmiary oraz pozycję tego okna. Program powinien użyć tej flagi podczas wyświetlania okna po raz pierwszy.

Zwracana wartość

Jeśli nie wystąpią żadne błędy, funkcja zakończy się po zwróceniu komunikatu WM_QUIT i powinna zwrócić wartość zawartą w argumencie wParam ostatniego komunikatu. Jeśli funkcja zakończy się przed wejściem do pętli komunikatów, powinna zwrócić zero.

Dodatkowe informacje

Nazwa WinMain jest używana zazwyczaj w wielu projektach. W zależności od szkieletu projektu, wywołanie tej funkcji może być poprzedzone oraz zakończony przez dodatkowe działania zależne od danego projektu. Ta funkcja powinna być używana do rozpoczęcia programu, wyświetlenia głównego okna i utworzenia pętli komunikatów kontrolującą zachowanie programu aż do jego zakończenia. Należy zakończyć działanie pętli komunikatów po otrzymaniu komunikatu WM_QUIT. W tym momencie ta funkcja powinna zakończyć działanie programu i zwrócić wartość zawartą w argumencie wParam. Jeśli komunikat WM_QUIT zostanie pobrany jako wynik wywołania funkcji PostQuitMessage, wartość argumentu wParam jest również wartością argumentu nExitCode funkcji PostQuitMessage. Programy ANSI mogą używać argumentu lpCmdLine tej funkcji, aby uzyskać dostęp do linii poleceń programu (bez jego nazwy). Należy pamiętać, że argument lpCmdLine wykorzystuje typ LPSTR, a nie LPTSTR. To powoduje, że ta funkcja nie może być wykorzystana w programach Unicode. Funkcja GetCommandLineW może być użyta do uzyskania linii poleceń jako łańcucha znaków Unicode. Niektóre projekty mogą zapewniać inne punkty rozpoczęcia programu zapewniające pobieranie linii poleceń w formacie Unicode. Na przykład kompilator Microsoft Visual Studio C++ używa w tym celu nazwy wWinMain.

Wymagania

Minimalny system klientaWindows 2000 Professional (tylko aplikacje biurowe).
Minimalny system serweraWindows 2000 Server (tylko aplikacje biurowe).
NagłówekWinbase.h (dołącza Windows.h)

Linki zewnętrzne