在我的托管引导程序的bundle.wxs中,我链接了多个包:
<Chain>
<ExePackage Id="Test1"......>
<ExePackage Id="Test2"......>
<ExePackage Id="MicrosoftVCPP2005Redistributable" SourceFile="..\Tools\VC2005Redistributable\vcredist_x86.exe" Vital="yes" InstallCondition="SelectedDBSize1 = 24" />
</Chain>
我正在订阅ExecutePackageBegin
/ ExecutePackageComplete
个事件,以检查当前正在执行的包,并相应地显示进度文本,指示正在进行的安装。
但是,如果由于某种原因中途开始回滚操作,我想更改进度文本以指示回滚正在进行中。从安装切换到回滚时是否有可用的事件?或者我是否必须检查被调用的包的顺序并根据它来决定?
答案 0 :(得分:3)
属性的文档有点不对,但ExecutePackageBeginEventArgs
类的ShouldExecute
属性会告诉您包是“正在执行”还是“回滚”。在您的情况下,当ExecutePackageBeginEventArgs.ShouldExecute=false
然后您知道正在回滚包时。