bundle项目有两个EXE安装程序,两者都必须重新启动计算机。代码如下:
<Chain>
<ExePackage
Id="RDRole"
Cache="no"
Compressed="yes"
PerMachine="yes"
Vital="no"
SourceFile="Resource\ServerManagerCmd.exe"
Permanent="yes"
InstallCommand="-install RDS-RD-Server">
<ExitCode
Behavior="forceReboot"/>
</ExePackage>
<ExePackage
Id="DoNetFull"
Name =".NET Framework 4.0 full runtime"
Cache="yes"
Compressed="yes"
PerMachine="yes"
Vital="yes"
SourceFile="Resource\dotNetFx40_Full_x86_x64.exe"
InstallCommand="/q /norestart"
Permanent="yes">
<ExitCode
Behavior="forceReboot"/>
</ExePackage>
如果同时安装了RDRole
和DoNetFull
,如何让计算机重启一次?
答案 0 :(得分:0)
今天Burn引擎目前不支持。有一个功能请求可以创建像RollbackBoundary
这样的内容,表示如果此时需要重新启动,请接受它。我们可以称之为RestartBoundary
。但是,这在今天不存在。
但是,与Burn中的大多数内容一样,您可以通过开发一个自定义Bootstrapper应用程序来创建相同的概念,该应用程序在注意到以前的包需要重新启动时从OnExecutePackageComplete返回强制重启。拥有自定义BA后,实施起来并不是非常困难。