如何使用 Wix Installer 下载和安装 .NET Framework?

How to download and install the .NET Framework using Wix Installer?

我们有一个应用程序依赖于已安装的 .NET Framework 4.5。 Wix 安装程序应自动检测何时未安装 .NET Framework 4.5(或更高版本)。这适用于以下 wix 声明:

<PropertyRef Id="NETFRAMEWORK45"/>
<Condition Message=".NET Framwork 4.5 is not installed.">
    <![CDATA[Installed OR NETFRAMEWORK45]]>
</Condition>

我们的目标:Wix 安装程序应自动下载 并安装 .Net Framework 4.5。 'burn' 似乎提供了一种机制,让安装程序自动安装 .NET Framwork:http://wixtoolset.org/documentation/manual/v3/howtos/redistributables_and_install_checks/install_dotnet.html。该文档定义了对 .NET Framework 安装文件的引用:

<MsiPackage Id="MyApplication" SourceFile="$(var.MyApplicationSetup.TargetPath)"/>

但是 我们不想将 .NET Framework 添加到我们的安装程序中。安装程序应自动将其下载到将执行安装程序的目标系统上。

我们怎样才能做到这一点?

请参阅 NetFx45Web 包组参考:

http://wixtoolset.org/documentation/manual/v3/customactions/wixnetfxextension.html

如果您没有包组参考,有关它如何工作的更多信息,请参见类似的示例:

Microsoft 允许您重新分发他们的框架,但只能以原始形式分发。 这也意味着您无法将框架构建到您自己的 .msi 包中。

您可以做的是提供一个单独的 bootstrap 安装程序 Setup.exe,它会查找已安装的框架并启动您的 .NET Framework 可再发行组件。

如果您找到了不使用 Bootstrap 安装程序的方法,请告诉我。