我有一個簡單的刻錄引導程序,其中我需要做的第一件事是觸發重新啓動(在安裝任何內容之前),然後在重新啓動後繼續安裝。我已經設置了鏈如:WiX ExitCode forceReboot導致無盡的重新啓動
<Chain>
<ExePackage SourceFile="DummyExe.exe">
<ExitCode Behavior="forceReboot" />
</ExePackage>
<PackageGroupRef Id="NetFx40Web" />
<PackageGroupRef Id="others..." />
</Chain>
當我最初運行安裝程序,這工作得很好:它強制重新啓動,並繼續在登錄時安裝,但隨後的鏈從頭開始了,因此引發另一次重啓。它只是強制重新啓動,並且不會繼續安裝。
我發現other answers解釋如何使用自定義引導程序應用程序來做到這一點,但我目前使用bal:WixStandardBootstrapperApplication
。
這可能沒有寫CBA? (我正在使用WiX 3.7)
幸好我在'ExePackage'的控制。它只是我添加的一個佔位符,用於在安裝之前強制重新啓動。如果我添加多個'ExitCode'元素,我想我需要修改我的dummy exe以在重新啓動之前返回一個退出代碼,並且在重新啓動後另一個退出代碼(表示我們不需要安裝)?我想寫一個臨時註冊碼是最好的辦法。 – kcnygaard
您可能應該允許exe運行至不起作用-0對於完成的安裝而言可能是一個很好的退出代碼。如果你確實想避免運行它,那麼你可以指定一個DetectCondition。 –