【发布时间】:2014-08-13 12:43:32
【问题描述】:
我构建了一个托管引导程序应用程序,基于 .NET 作为先决条件。引导程序将首先安装 .NET,然后运行 WPF 用户界面(我使用的是 WixNetFxExtension)。
但是,.NET 安装程序要求机器上已经安装了一个名为 WIC 的组件。
问题是某些操作系统没有在机器上安装 WIC(Windows 映像组件)。那么,如何将它的安装程序嵌入到 .NET 之前运行呢?
【问题讨论】:
我构建了一个托管引导程序应用程序,基于 .NET 作为先决条件。引导程序将首先安装 .NET,然后运行 WPF 用户界面(我使用的是 WixNetFxExtension)。
但是,.NET 安装程序要求机器上已经安装了一个名为 WIC 的组件。
问题是某些操作系统没有在机器上安装 WIC(Windows 映像组件)。那么,如何将它的安装程序嵌入到 .NET 之前运行呢?
【问题讨论】:
您需要下载WIC Installer,然后在安装程序之前将包添加到您的链中。
<Chain>
<ExePackage Id="WIC" include the source and your settings here />
<PackageGroupRef Id="NetFx40Web" />
<MsiPackage Id="Your Installer" include the source and your settings here />
</Chain>
另外,为了防止安装程序不必要地运行,您可以添加 RegistrySearch 以确定它是否已安装并将其用作 ExePackage 上的 InstallCondition。
【讨论】: