从Bootstrapper获取ApplyPhase计数

时间:2016-04-20 05:00:23

标签: wix windows-installer bootstrapping burn wix3.8

我需要计算我的bootstrapper安装程序的进度百分比。但我无法确定安装或卸载过程包含多少个阶段。似乎安装阶段有2个(Cache和Execute),而卸载阶段只有1个(Execute)。但是我怎样才能获得这个价值呢?在之前的版本中,我可以从ApplyPhaseCount回调中获取它。但现在它已被ApplyBegin取代。参数" ApplyBeginEventArgs"并不包含像ApplyPhase那样的计数。我只能看到" ApplyBeginEventArgs"的Result属性。我该如何计算?请指教。

1 个答案:

答案 0 :(得分:1)

相位计数信息已添加到v3.9.616.0和v4.0.2220.0。

来自v3 WixBA ProgressViewModel

WixBA.Model.Bootstrapper.ApplyPhaseCount += this.ApplyPhaseCount;

private void ApplyPhaseCount(object sender, ApplyPhaseCountArgs e) 
{ 
    this.progressPhases = e.PhaseCount; 
} 

来自v4 WixBA ProgressViewModel

WixBA.Model.Bootstrapper.ApplyBegin += this.ApplyBegin;

private void ApplyBegin(object sender, ApplyBeginEventArgs e) 
{ 
    this.progressPhases = e.PhaseCount; 
}