Wenns nur um einzelne Parameter geht, z.B. /p, fährst Du mit der Funktion FindCmdLineSwitch besser, die liefert ein True zurück, wenn der jeweilige Parameter gefunden wird.
Ein Beispiel, wie man das ganze nutzen kann:
Delphi-Quellcode:
program Parameter;
{$APPTYPE CONSOLE}
uses
SysUtils;
var
FileName: String;
Print: Boolean;
Count: Integer;
begin
FileName := ParamStr(1);
Print := FindCmdLineSwitch( 'p', ['/'], False);
Count := ParamCount;
WriteLn(Format('Aufruf: %s', [CmdLine]));
If Print
then WriteLn('Parameter /p angegeben')
else WriteLn('Parameter /p nicht angegeben');
WriteLn(Format('Dateiname: %s', [FileName]));
WriteLn(Format('Anzahl Parameter: %d', [Count]));
end.