【问题标题】:Install .NET framework using online setup in WiX使用 WiX 中的在线设置安装 .NET 框架
【发布时间】:2012-05-27 19:11:37
【问题描述】:

更新:事实证明这确实有效,但安装文件只是默认复制到输出目录。如果安装程序在没有它们存在的情况下运行,它只会根据需要下载文件。

我一直在阅读文档并遵循如何在 WiX 中安装 .NET 框架的指南,但是由于包含框架安装文件(在 100mb 和 200mb 之间),构建的输出非常大)。

由于我想避免最终用户下载如此大的文件,是否可以让 WiX 使用在线安装程序 (http://www.microsoft.com/en-us/download/details.aspx?id= 31) 而不是让已经拥有框架的用户必须下载大型设置?

目前我的标记与文档中的标记几乎完全相同,但供可能需要查看的任何人参考,如下所示:

  <ItemGroup>
    <BootstrapperFile Include="Microsoft.Net.Framework.3.5">
      <ProductName>.NET Framework 3.5</ProductName>
    </BootstrapperFile>
    <BootstrapperFile Include="Microsoft.Windows.Installer.3.1">
      <ProductName>Windows Installer 3.1</ProductName>
    </BootstrapperFile>
  </ItemGroup>
  <Target Name="AfterBuild">
    <GenerateBootstrapper 
      ApplicationFile="$(TargetFileName)" 
      ApplicationName="Application Name" 
      BootstrapperItems="@(BootstrapperFile)" 
      ComponentsLocation="HomeSite" 
      CopyComponents="True" 
      OutputPath="$(OutputPath)" 
      Path="C:\Program Files (x86)\Microsoft SDKs\Windows\v6.0A\Bootstrapper\" />
  </Target>

【问题讨论】:

  • 根据this question,您的 msbuild 文件看起来不错。您是否尝试在不复制 .net 安装文件的情况下安装它?
  • @Wimmel 好吧,这很尴尬!事实证明它正在添加在线安装程序,我所要做的就是没有你建议的安装文件。
  • 没问题。不要忘记在下面接受您的答案。
  • 嗨。你能告诉我这些信息在文档中的确切位置吗?我没有看到有关 ItemGruo 元素的任何信息?这不是 Wix 的一部分吗?

标签: .net frameworks wix bootstrapper


【解决方案1】:

事实证明这确实有效,但默认情况下安装文件只是被复制到输出目录。如果安装程序在没有它们存在的情况下运行,它只会根据需要下载文件。

【讨论】:

    【解决方案2】:

    正如 Sunil 提到的,也许最简单的方法是使用引导程序。一旦你的 WiX 引导程序开始工作,你需要做的就是添加 .Net 4.0 作为先决条件..

    a) 将文件 WixNetFxExtension.dll 的引用添加到您的 Bootstrapper / 托管 Bootstrapper 应用程序项目中

    b) 将以下内容添加为链中的第一项..

    <PackageGroupRef Id="NetFx40Web"/>
    

    就是这样!

    如果需要,上面会通过 Internet 下载 .net 4。更多信息和选项在这里:wixnetfxextension documentation

    【讨论】:

      【解决方案3】:

      有许多可用于绑定设置的引导程序。您可以将 .net 框架的 Web 设置与您的 s/w 绑定,然后如果未安装先决条件,该工具将安装 .net 框架。

      我也有同样的要求,我选择了dotNetInstaller。这是一个免费工具。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-04-09
        • 1970-01-01
        • 2014-10-10
        • 2012-11-23
        • 2022-06-28
        • 2020-08-26
        • 2022-01-21
        相关资源
        最近更新 更多