1

私のアプリケーションには 2 つの msi インストーラーがあります。1 つはベンダー提供で変更できません。もう 1 つは、VS2010 のセットアップと展開を使用して生成した MSI ファイルです。

WIX Bootstrapper を使用してこれら 2 つを 1 つに結合しました。このアプリケーションをビルドすると、2 つの MSI と 1 つの Bootstrapper exe が提供されます。明らかに、Bootstrapper exe をクリックすると、他の 2 つの MSI が順次インストールされますが、問題は、これを提供したいだけです。単一の Bootstrapper exe を顧客に提供しますが、他の 2 つの MSI も必要です。それを行う他の方法はありますか? 以下のコードを見つけてください..

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
     xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
    <Bundle Name="SoftWritersInstaller_Package" Version="1.0.0.0" Manufacturer="Microsoft" UpgradeCode="86431df1-94cc-433a-9885-af19bca9b5d3">
        <BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense" />


    <Chain >
      <!-- TODO: Define the list of chained packages. -->
      <!-- <MsiPackage SourceFile="path\to\your.msi" /> -->
      <PackageGroupRef Id="Netfx4Full"/>
      <MsiPackage Id="F_VB_AGENT" SourceFile=".\VBandMsi\Framewrk with Agent.msi" Compressed="no" EnableFeatureSelection="yes" DisplayInternalUI="yes" ></MsiPackage>
      <MsiPackage Id="FVBAgent.Net" SourceFile=".\VBandMsi\.FDotNet.Setup.msi" Compressed="no" EnableFeatureSelection="yes" DisplayInternalUI="yes"   />
    </Chain>
  </Bundle>

  <Fragment>
    <!-- Check for .NET 4.0 -->
    <util:RegistrySearch Root="HKLM"
                         Key="SOFTWARE\Microsoft\Net Framework Setup\NDP\v4\Full"
                         Value="Version"
                         Variable="Netfx4FullVersion" />
    <util:RegistrySearch Root="HKLM"
                         Key="SOFTWARE\Microsoft\Net Framework Setup\NDP\v4\Full"
                         Value="Version"
                         Variable="Netfx4x64FullVersion"
                         Win64="yes"
                           />
    <PackageGroup Id="Netfx4Full">
      <ExePackage Id="Netfx4Full"
                  DisplayName="Microsoft .NET Framework 4.0"
                  Compressed="yes"
                  Cache="yes"
                  PerMachine="yes"
                  Permanent="yes"
                  Protocol="netfx4"
                  Vital="yes"
                  SourceFile=".\dotNetFx40_Full_x86_x64.exe"
                  InstallCommand="/passive /norestart"
                  DetectCondition="Netfx4FullVersion AND (NOT VersionNT64 OR Netfx4x64FullVersion)" />
    </PackageGroup>
  </Fragment>
</Wix>
4

0 に答える 0