问题描述
是否可以在终止后重复.exe文件。因此,当您终止正在运行的可执行程序(来自Run
部分)时,由于出现错误代码,然后您想要再次执行同一程序(类似于循环)。
解决方法
我认为Run
部分中不可能。除了您可以使用cmd
||
运算符基于非零退出代码来进行有限的重试次数之外,
[Run]
Filename: {cmd}; Parameters: "/c command params || command params || ..."
如果您需要更好的控制,则应在ssInstall
或ssPostInstall
步骤中使用Exec
function中的CurStepChanged
event function,例如:
procedure CurStepChanged(CurStep: TSetupStep);
var
Code: Integer;
begin
if CurPageID = ssPostInstall then
begin
while (not Exec('command','params','',SW_HIDE,ewWaitUntilTerminated,Code)) or
(Code <> 0) do ;
end;
end;