|
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, |
Die Parameter haben folgende Bedeutung:
|
Parameter |
Bedeutung |
| HINSTANCE hInstance | Handle der aktuellen Instanz. Ist bei WIN32-Anwendungen immer deren Ladeadresse und besitzt den in der Regel den Wert 0x400000. |
| HINSTANCE hPrevInstance | Handle der vorherigen Instanz der Anwendung. Bei WIN32-Anwendungen hat dieser Parameter immer den Wert 0. |
| LPSTR lpCmdLine | Zeiger auf die Befehlszeile (als String) mit der die Anwendung gestartet wurde. |
| int nCmdShow | Gibt an wie das Hauptfenster der Anwendung dargestellt werden soll. |
Noch einige Anmerkungen zu den Parametern lpCmdLine und nCmdShow.
Sämtliche Kommandozeilen-Parameter werden unter WINDOWS in einem String übergeben und nicht wie bei 'normalen' C/C++ Programmen als getrennte Strings. Der String enthält unter WINDOWS auch nicht mehr den Namen des Programms, d.h. wenn Sie Ihre Anwendung wie folgt starten:
myprog param1 param2
so zeigt lpCmdLine auf die Zeichenfolge "param1 param2".
nCmdShow gibt an, wie das Fenster dargestellt werden soll. Dieser Parameter wird im weiteren Verlauf des Programms an eine API-Funktion übergeben die dafür sorgt, dass das Fenster letztendlich entsprechend dargestellt wird. Für nCmdShow sind u.a. folgende Konstanten definiert:
|
Konstante |
Bedeutung |
| SW_HIDE | Verbirgt das Fenster und aktiviert das nächste Fenster. |
| SW_MINIMIZE | Verkleinert das Fenster zum Symbol. |
| SW_RESTORE | Aktiviert das Fenster und zeigt es an. Falls das Fenster zum Symbol verkleinert wurde oder als Vollbild dargestellt ist, stellt WINDOWS die ursprüngliche Größe wieder her. Eine Anwendung sollte diesen Wert immer angeben wenn das Fenster aus dem minimierten Zustand geholt wird. |
| SW_SHOW | Aktiviert nur das Fensters, verändert aber seine Größe und Position nicht. |
| SW_SHOWMAXIMIZED | Aktiviert das Fenster und zeigt es als Vollbild an. |
| SW_SHOWMINIMIZED | Aktiviert das Fenster und zeigt es als Symbol an. |
| SW_SHOWMINNOACTIVE | Zeigt das Fenster als Symbol an. Das aktive Fenster bleibt aber aktiv. |
| SW_SHOWNA | Zeigt das Fenster im aktuellen Zustand an. Das aktive Fenster bleibt aktiv. |
| SW_SHOWNOACTIVATE | Zeigt das Fenster in seinem neuen Zustand (Größe und Position) an. Das aktive Fenster bleibt aktiv. |
| SW_SHOWNORMAL | Aktiviert das Fenster und zeigt es an. Ist das Fenster verkleinert oder als Vollbild, wird es auf die Originalgröße gebracht. |
Als Returnwert liefert die Funktion einen Wert vom Typ int WINAPI zurück. WINAPI ist ein Überbleibsel aus vergangenen 16-Bit Tagen und ist unter Win32 als leeres Symbol definiert so dass WinMain(...) letztendlich nur einen int-Wert zurückliefert. Dieser int-Wert wird aber zur Zeit von WINDOWS nicht weiter ausgewertet.
|
|