Der Einsprungspunkt OwlMain()

Einführung    

Parameterauswertung in OwlMain()

Jede ObjectWindows-Anwendung besitzt normalerweise die Funktion OwlMain, die das Äquivalent der WinMain-Funktion eines normalen Windows-Programms (welches mit der Windows API erstellt wird) darstellt. Im Gegensatz zur WinMain-Funktion sieht die Deklaration von OwlMain aber etwas anders aus:

int OwlMain(int argc, char *argv[]);

Die Parameter argc und argv entsprechen dem, was wir von einem herkömmlichen C-Programm her bereits kennen. Damit lassen sich Programmparameter also ganz bequem handhaben. Für den Fall, das Sie die Parameter benötigen, die normalerweise an WinMain übergeben werden, finden Sie diese in der Anwendungsklasse TApplication.

Sie können aber auch anstelle OwlMain Ihre eigene WinMain-Funktion verwenden, allerdings sollte das nicht nötig sein. Die OWL enthält nämlich bereits eine Standard-WinMain-Funktion mit Fehlertests und Exception-Behandlung. Diese sorgt für den Aufbau der Anwendung und ruft anschließend die OwlMain-Funktion auf.

Parameterauswertung in OwlMain

Das folgende Beispielprogramm zeigt, wie die Übergabeparameter der OwlMain-Funktion verwendet werden können.

 

// Beispielprogramm PROJ001
 
#include <owl/applicat.h>
 
class CApp : public TApplication
{

public:

CApp(const char far* name = "Hallo") : TApplication(name) {}

};
 
int OwlMain(int argc, char *argv[])
{

CApp *app;

if(argc >= 2)

app = new CApp(argv[1]);

else

app = new CApp;

 

return app->Run();

}
 

Das Programm ist recht simpel. Führen wir das Programm normal aus, erscheint der Text "Hallo" im Titelbalken. Übergeben wir dem Programm aber einen Parameter, so erscheint dieser als Titel. Beispielsweise können wir im Start-Menü von Windows 95 den Befehl Ausführen... wählen. Anschließend geben wir den Pfad/Namen unseres Beispielprogramms an, sowie den gewünschten Übergabeparameter. Das Eingabefenster sieht dann etwa so aus:

Nach dem Betätigen des OK-Schalters wird unsere Anwendung ausgeführt:

Einführung    

Stand: 01.11.98 03:36:13
© 1998 by Hans Joachim Kiefer, hajokiefer@handshake.de