【问题标题】:Inno Setup Log setup exit codeInno Setup Log 设置退出代码
【发布时间】:2016-03-09 14:38:32
【问题描述】:

默认情况下,Inno Setup 日志文件不包含设置退出代码。我正在寻找一种将其包含在日志文件中的方法。我假设这将使用Log 函数完成,并将其包含在DeinitializeSetup 事件中。像这样的:

procedure DeinitializeSetup();
begin
  Log('Exit code: ' + ExitCode);
end;

我不知道并且似乎找不到的是如何返回设置退出代码,以便我可以在Log 函数中使用它。这是执行此操作的最佳方法吗?如何返回设置退出代码?

【问题讨论】:

  • 你为什么需要那个?
  • 我希望能够查看是否发生了某种情况,因此我设置了一个自定义退出代码 (9),这意味着 IntializeSetup 由于 Windows 更新需要重新启动而退出。
  • 如果您调用ExitProcess,该过程将立即中止。之后没有调用 Pascal 代码,甚至没有调用 DeinitializeSetup
  • 不,没有更好的办法,afaik。
  • 你当然可以在拨打ExitProcess之前记录一些东西。

标签: inno-setup pascalscript


【解决方案1】:

在 Pascal 脚本中无法检索退出代码。

你所能做的就是记录,如果安装成功与否(无论如何已经记录了什么)。

一种方法是检查是否调用了 the GetCustomSetupExitCode event function(仅在退出代码为 0 时调用它)。

var
  ZeroExitCode: Boolean;

function GetCustomSetupExitCode: Integer;
begin
  ZeroExitCode := True;
  Result := 0;
end;

procedure DeinitializeSetup();
begin
  if ZeroExitCode then
    Log('Zero exit code')
  else
    Log('Non-zero exit code');
end;

【讨论】:

    猜你喜欢
    • 2011-03-13
    • 1970-01-01
    • 1970-01-01
    • 2016-02-06
    • 1970-01-01
    • 2017-02-02
    • 1970-01-01
    • 2010-11-20
    • 1970-01-01
    相关资源
    最近更新 更多