Startparameter auswerten

Hallo,

ich möchte meinem Programm die Fähigkeit verleihen, auf verschiedene Startparameter unterschiedlich zu reagieren, also z.B. beim Aufruf über „PROGRAMM.EXE /A“ oder „PROGRAMM.EXE /B“ sollen verschiedene Ansichten geladen werden.

Leider habe ich keine Ahnung, wie man so etwas macht.

Wer weiß was?

Gruß Ebi

Hallo Ebi,

die Anzahl der Startparameter ermittelst du mit der Funktion ParamCount. Die gibt dir die Anzahl der übergebenen Startparameter zurück. Der Aufruf des Programms in der Form PROGRAMM.EXE /A /B ergibt also 2.
Mit der Funktion ParamStr wertest du die enizelnen Parameter aus.

procedure TForm1.FormCreate(Sender : TObject);
begin
 if ParamCount \> 0 then
 if UpperCase(ParamStr(1)) = '/A' then
 // hier Befehle für Parameter /A
end;

Je nach Art der erwarteten Parameter kann man auch zur Auswertung mit einer Caseanweisung arbeiten.
Der Parameter mit dem Index 0,
Aufruf = ParamStr(0)
Liefert den Namen des Programms einschließlich dem Pfad zurück.

Achte aber darauf, dass Anwender nicht immer die von dir erwarteten Aufrufparameter übergeben. (Manchmal in Groß-, manchmal in Kleinbuchstaben, Mal mit / mal mit -, usw.) Denke also bei deiner Auswertung immer daran, auch falsche Parametern zu behandeln.

Gruß Mike

ParamStr(1)

ParamStr(1) rüft das erste ab, ParamStr(2) das zweite.

Details in der Hilfe…