在 Wix 3.11 中,我使用 burn 来定义一个捆绑包和一系列要安装的 msi 包。
就像是:
<Chain>
<!-- List of prerequisites: -->
<PackageGroupRef Id="Prereq1"/>
<PackageGroupRef Id="Prereq2"/>
<PackageGroupRef Id="Prereq3"/>
<!-- Our packages -->
<PackageGroupRef Id="Package1"/>
<PackageGroupRef Id="Package2"/>
</Chain>
在 Package1 中,我定义了以下内容:
<WixVariable Id="SrcFolder" Value="..\..\..\..\path-to-SrcFolder" />
<PackageGroup Id="Package1">
<MsiPackage gd:LicenseId="Feature1" InstallCondition="Feature1" gd:Optional="no" SourceFile="!(wix.SrcFolder)\Feature1.msi" Compressed="no" Name="packages\Feature1.msi">
<MsiProperty Name='LICENSEFOLDER' Value='[LicenseFolder]'/>
<MsiProperty Name='COMPANYNAME' Value='[Organization]'/>
<MsiProperty Name='INSTALLFOLDER' Value='[InstallFolder]'/>
</MsiPackage>
<MsiPackage gd:LicenseId="Feature2" InstallCondition="Feature2" gd:Optional="yes" SourceFile="!(wix.SrcFolder)\Feature2.msi" Compressed="no" Name="packages\Feature2.msi">
</MsiPackage>
</PackageGroup>
只有在安装机器中定义了环境变量(ENV_VAR)时,我才想安装我的“Feature2”包,如果不是这种情况,请不要安装它。
我怎么能那样做?