WiX ExitCode forceReboot导致无休止的重启

时间:2013-08-27 14:57:27

标签: wix installation burn wix3.7

我有一个简单的Burn引导程序,我需要做的第一件事就是触发重启(在安装任何东西之前),然后在重启后继续安装。我已经建立了这样的链条:

<Chain>
  <ExePackage SourceFile="DummyExe.exe">
    <ExitCode Behavior="forceReboot" />
  </ExePackage>
  <PackageGroupRef Id="NetFx40Web" />
  <PackageGroupRef Id="others..." />
</Chain>

这在我最初运行安装程序时工作正常:它强制重新启动并在登录时继续安装程序,但随后链从头重新开始,从而触发另一次重新启动。它只是强制连续重启,永远不会继续安装。

我发现other answers解释了如何使用自定义引导程序应用程序执行此操作,但我目前正在使用bal:WixStandardBootstrapperApplication

这可不用写CBA吗? (我使用的是WiX 3.7)

2 个答案:

答案 0 :(得分:1)

你正在得到你所要求的。

您希望在ExitCode元素中提供Value属性以调整Behavior。没有一个,就会为任何退出代码调用该行为。有关预期的退出代码及其含义,请参阅包的文档。如果愿意,可以指定多个ExitCode元素,最后一个元素没有值来指定默认行为。

答案 1 :(得分:0)

这可行:

<Chain>
  <ExePackage Id="DummyReboot" SourceFile="DummyExe.exe" InstallCondition="NOT WixBundleForcedRestartPackage = DummyReboot" >
    <ExitCode Behavior="forceReboot" />
  </ExePackage>
  <PackageGroupRef Id="NetFx40Web" />
  <PackageGroupRef Id="others..." />
</Chain>