5

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

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

我们的目标:Wix 安装程序应自动下载并安装 .Net Framework 4.5。似乎,“刻录”提供了一种机制,让安装程序自动安装 .NET 框架: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 添加到我们的安装程序中。安装程序应自动将其下载到将执行安装程序的目标系统上。

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

4

2 回答 2

0

请参阅 NetFx45Web 包组参考:

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

如果您没有包组 ref,有关其工作原理的更多信息,请参阅类似示例:

使用 wix burn 下载 vcruntime140

于 2018-04-17T20:02:24.797 回答
0

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

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

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

于 2019-10-09T06:44:33.893 回答