WIX bootstrapper项目安装框架,无法安装我的应用程序

时间:2014-11-25 18:01:32

标签: c# visual-studio-2010 visual-studio wix

以下是我的Bootstrapper项目的完整Bundle.wxs

 <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
         xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
      <Bundle UpgradeCode="493993E8-50F0-43B2-BEF7-A57F4EAD374D" Name="MYAPPlication Name" Version="1.0.0.0" IconSourceFile="D:\..\Resources\Application_icon.ico">
        <BootstrapperApplicationRef Id="ManagedBootstrapperApplicationHost">
          <!--<Payload Name="BootstrapperCore.config" SourceFile="$(var.MYAPPlication .TargetDir)\MYAPPlication .BootstrapperCore.config"/>-->
          <Payload SourceFile="D:\..\MYAPPlication.msi"/>
          <!--<Payload SourceFile="NetfxLicense.rtf"/>-->
        </BootstrapperApplicationRef>

    <Chain>
      <PackageGroupRef Id="Netfx4Full"/>
      <MsiPackage  Name="MSIApplication.msi" Compressed="yes" SourceFile="D:\.\MSIApplication.msi" Vital="yes">
        <MsiProperty Name="ARPSYSTEMCOMPONENT"  Value="1"/>
      </MsiPackage>
    </Chain>
  </Bundle>
  <Fragment>
    <WixVariable
        Id="WixMbaPrereqPackageId"
        Value="Netfx4Full" />
    <WixVariable Id="WixMbaPrereqLicenseUrl" Value="NetfxLicense.rtf" />

    <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"
          Cache="no"
          Compressed="no"
          PerMachine="yes"
          Permanent="yes"
          Vital="yes"
          SourceFile="D:\...\dotNetFx40_Full_x86_x64.exe"
          DownloadUrl="http://go.microsoft.com/fwlink/?LinkId=164193"
          DetectCondition="Netfx4FullVersion AND (NOT VersionNT64 OR Netfx4x64FullVersion)" />
    </PackageGroup>
  </Fragment>
</Wix>

在构建上述引导项目之后,我得到两个文件,1)包含的框架(dotNetFx40_Full_x86_x64.exe)和另一个是带有MYApplication名称和ICON(MYAPPlication.exe)的EXE文件。我在我的系统中删除了框架并双击了MYAPPlication.exe,它安装了框架并关闭了。我的实际msi应用程序(MSIApplication.msi)在框架安装后没有安装我所包含的内容。

我已经有一个安装项目并输出.msi文件(MSIApplication.msi)。我在Bundle.wxs中添加了这个msi。

我需要安装框架(如果不存在)并且应该安装我的msi应用程序(MSIApplication.msi),当用户双击MYAPPlication.exe时。是否可以使用wix bootstraper项目。

0 个答案:

没有答案