2015-10-05 71 views
1

Bundle.wxl:如何修改WiX刻錄引導程序中的MSI功能?

<Bundle Name="$(var.SetupName)" 
     Version="$(var.ProductVersion)" 
     Manufacturer="$(var.CompanyName)" 
     UpgradeCode="$(var.UpgradeCode)"> 

    <Variable bal:Overridable="yes" Name="AddLocal"/> 
    <Variable bal:Overridable="yes" Name="Remove"/> 
    <Chain> 
     <MsiPackage Id ="Hello.msi" Name="MyApp.msi" SourceFile="$(var.MyApp.TargetPath)" EnableFeatureSelection="yes" > 
      <MsiProperty Name="ADDLOCAL" Value="[AddLocal]"/> 
      <MsiProperty Name="REMOVE" Value="[Remove]"/> 
     </MsiPackage> 
    </Chain> 
</Bundle> 

字符串變量AddLocal限定由從UI引導程序複選框併發送值到Bundle.wxl這樣的:

BootstrapperApplication.Engine.StringVariables["AddLocal"] = "FIRST,SECOND";Remove可變同樣的情況: BootstrapperApplication.Engine.StringVariables["Remove"] = "THIRD";

設置變量後,我運行BootstrapperApplication.Engine.Plan(LaunchAction.Modify);,但沒有任何更改與我的功能。

日誌文件中包含字符串像這樣:

計劃的特點:第一,狀態:無,默認要求:未知,BA要求:未知,執行操作:無,回滾操作:無

計劃功能:SECOND,狀態:缺席,默認請求:未知,ba請求:未知,執行操作:無,回滾操作:無

計劃功能:THIRD,狀態:缺席,缺省請求:未知,執行操作:無,回滾操作:無

但是,Product.wxs包含id =「FIRST」,id =「SECOND」,id =「THIRD」的功能。

回答

相關問題