コマンドラインにパスが含まれている場合、CreateProcess()はfalseを返します。理由がわかりません。
ここで操作を簡略化しました。
function ExecProcess(path:string):boolean;
var StartupInfo:TstartupInfo;
ProcInfo:TProcessInformation;
begin
FillChar( StartupInfo, SizeOf( TStartupInfo ), 0 );
StartupInfo.cb := SizeOf( TStartupInfo );
Result:= CreateProcess(nil, PChar(path), Nil, Nil, False, 0, Nil, PChar(ExtractFilePath(path)),StartupInfo,ProcInfo);
end;
begin
ExecProcess(ParamStr(0) + ExtractFilePath(ParamStr(0)));
end.
結果は偽です。
コマンドラインにパスを含めるにはどうすればよいですか?