【问题标题】:Setup Project versus Bootstrapper Project for checking and installing prerequisites用于检查和安装先决条件的设置项目与引导程序项目
【发布时间】:2014-12-30 07:05:12
【问题描述】:
这是我的情况:
- 我创建了一个普通的 WiX 设置项目。
- 然后我尝试检查一些先决条件,例如是否安装了 .NET 框架。
- 似乎我无法通过 WiX 安装项目执行此操作。所以我创造
WiX Bootstrapper 项目,并且能够检查并安装这些
先决条件。
- 我尝试在 WiX 设置项目中使用 WiX 引导程序,但不能。我看到的例子是,WiX Bootstrapper 项目使用带有
MsiPackage 标签的 Setup 项目。
从 Bootstrapper 项目开始设置项目对我来说似乎很奇怪。相反,我更喜欢从安装项目开始先决条件检查和安装(也许从安装项目调用引导程序项目)。
所以这是我的问题:
- 是否可以在 Wix 安装项目中检查和安装 .NET 框架的一些先决条件?如果有,怎么做?
- 是否可以从 WiX 引导程序启动应用程序并从中调用 WiX 设置项目?这是一般惯例吗?
【问题讨论】:
标签:
wix
installation
wix3.7
【解决方案1】:
- 可以从 wix 设置中检查 Dotnet。但是您不能从设置中安装先决条件。因此,您可以在安装前弹出一条消息,要求安装 dotnet。
这是使用 wix 检查 dotnet 4.0 的方法。
<Property Id="DOTNET40">
<RegistrySearch Id="NetFramework40"
Root="HKLM"
Key="Software\Microsoft\NET Framework Setup\NDP\v4"
Name="Install"
Type="raw" />
</Property>
<Condition Message="Please install the .NET Framework 4.0 and run this installer again.">
<![CDATA[Installed OR DOTNET40]]>
</Condition>
- 检查先决条件并使用引导程序安装它们是一般惯例。使用引导程序的主要原因是安装先决条件,然后安装您的设置。