Delphi中有两个专门用于读取命令行参数的变量:
Paramcount :用于返回命令行参数的个数
Paramstr数组 :用于返回指定的命令行参数,paramstr(0)是程序名,参数从paramstr(1)开始
发送端:
uses ShellAPI; procedure TForm1.Button1Click(Sender: TObject); var App,Param:string; begin App:=ExtractFilePath(paramstr(0))+'slave.exe'; Param:='P1 P2 P3'; //参数之间以空格分割 ShellExecute(Handle, 'open', PChar(App),PChar(Param), nil, SW_SHOW); end;
接收端:
procedure TForm1.FormCreate(Sender: TObject); begin if ParamCount>0 then begin showmessage('命令行参数个数为:'+inttostr(paramcount)); showmessage('应用程序名称为:'+paramstr(0)); showmessage('第1个命令行参数为:'+paramstr(1)); showmessage('第2个命令行参数为:'+paramstr(2)); showmessage('第3个命令行参数为:'+paramstr(3)); end; end;