我正在使用以下 InnoSetup 代码来运行 PowerShell 脚本并将其输出重定向到自定义进度页面: 在 Inno Setup 自定义向导页面上创建一个按钮来中断从安装程序执行的程序
我想要的是根据 PowerShell 脚本抛出的错误在完成页面上显示自定义错误消息,而不是带有默认消息的默认完成页面。
我已将 PowerShell 脚本配置为在发生特定故障时提供特定错误代码。我用过这样的东西:
Write-Output $Error.Exception.Message
Exit 1000
这里 1000 是脚本退出时自定义的错误代码。
是否可以根据如上所示的错误代码在 InnoSetup 的完成页面上显示自定义错误消息?
要检索退出代码,请使用
GetExitCodeProcess
:
function GetExitCodeProcess(Process: THandle; var ExitCode: Cardinal): Boolean;
external '[email protected] stdcall';
流程完成后的某个地方。在你的情况下,它位于
while not Completed do
循环完成之后的某个地方:
var
ExitCode: Cardinal;
GetExitCodeProcess(ExecInfo.hProcess, ExitCode);
然后使用
ExitCode
创建或修改 WizardForm.FinishedPage
上的标签。