1

在 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”包,如果不是这种情况,请不要安装它。

我怎么能那样做?

4

0 回答 0