如何使用WIX 3.6下载依赖项

时间:2011-05-12 16:19:51

标签: wix wix3.6

我正在使用WIX 3.6 Bundle来安装应用程序。它需要一些先决条件。如何设置软件包,以便引导程序自动从Internet下载文件?

我知道WIX设置本身就是这样。但我无法找到差异。这是我的.NET Framework 3.5片段:

<Fragment>
    <util:RegistrySearch Root="HKLM" Key="SOFTWARE\Microsoft\Net Framework Setup\NDP\v3.5" Value="Version" Variable="NetFX35Version" />
    <util:RegistrySearch Root="HKLM" Key="SOFTWARE\Microsoft\Net Framework Setup\NDP\v3.5" Value="Version" Variable="NetFX35x64Version" Win64="yes" />
    <util:RegistrySearch Root="HKLM" Key="SOFTWARE\Microsoft\Net Framework Setup\NDP\v3.5" Value="SP" Variable="NetFX35SP" />
    <util:RegistrySearch Root="HKLM" Key="SOFTWARE\Microsoft\Net Framework Setup\NDP\v3.5" Value="SP" Variable="NetFX35x64SP" Win64="yes" />

    <PackageGroup Id="NetFX35">
      <ExePackage Id="NetFX35" Cache="no" Compressed="no" PerMachine="yes" Permanent="yes" Vital="yes" 
              SourceFile="$(var.TargetDir)dotnetfx35setup.exe"
              DownloadUrl="http://download.microsoft.com/download/0/6/1/061F001C-8752-4600-A198-53214C69B51F/dotnetfx35setup.exe"
              DetectCondition="(NetFX35Version AND NetFX35SP >= 1) AND (NOT VersionNT64 OR (NetFX35x64Version AND NetFX35x64SP >= 1))" />
    </PackageGroup>
</Fragment>

当我使用此片段且dotnetfx35setup.exe不存在时,Bootstrapper会显示一个消息框,询问是否应该下载该文件。但它应该自动完成。

更新:

我正在使用WixStandardBootstrapperApplication。托管引导程序应用程序的行为是否不同?

1 个答案:

答案 0 :(得分:2)

WixStdBA在下载之前总会提示。我建议提交功能请求以使其成为可以抑制的内容。目前没有托管引导程序应用程序; ManagedBootstrapperApplicationHost是支持您自己的托管代码BA的基础结构。