使用 innosetup 并希望在 [RUN] 进程之一未返回进程代码 0 时显示错误/消息框。我将其用于授权过程,如果授权不成功,我想通知用户。
我有以下内容:
Filename: "{pf32}\Common Files\Authorization.exe"; Parameters: " "{code:GetAuthorizationFilePath}" /s"; WorkingDir: "{tmp}"; Flags: skipifdoesntexist hidewizard; StatusMsg: "Authorizing License";
返回我:
Process exit code:0
0 当然是成功的,但如果它不是 0 我想通知用户。
有没有办法做到这一点?
感谢致敬,
凯夫84
我认为没有办法从[Run]
部分。你能做的是:
- 使用 Pascal 脚本来完成此任务
- 或显示执行的应用程序中的模式错误消息
Authorization.exe
并仅在用户确认错误消息后才终止它(安装程序将继续,例如执行[Run]
部分)
这是 Pascal 脚本的代码示例;您还可以检查commented version https://stackoverflow.com/revisions/9621406/2这段代码:
[Code]
function NextButtonClick(CurPageID: Integer): Boolean;
var
ResultCode: Integer;
begin
Result := True;
if CurPageID = wpWelcome then
begin
Result := False;
if Exec(ExpandConstant('{pf32}\Common Files\Authorization.exe'), '', '',
SW_SHOW, ewWaitUntilTerminated, ResultCode) then
begin
if ResultCode = 0 then
Result := True
else
MsgBox('The authorization failed!', mbCriticalError, MB_OK);
end;
end;
end;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)