我是WiX的新手并且已经构建了一个独立的安装程序。我想检测系统上是否有.NET 4.5并提示用户安装它。我的开发环境是使用WiX 3.7工具集Visual Studio 2010。
从我看到的一些教程中,我应该使用WiX 3.6 Burn或在Visual Studio 2010中使用WiX引导程序项目模板。
出于某种原因,当我安装Wix 3.7时,我没有引导程序模板(我不确定我是否缺少下载扩展程序)。
使用引导程序模板比使用Burn更好吗?有什么区别?
答案 0 :(得分:2)
您需要创建一个名为“Bootstrapper Project”的新项目(此模板必须位于Visual Studio 2010安装中,与Windows Installer XML相关)。以下是包含手册的非常好的博文:
答案 1 :(得分:0)
Wix烧录,是Wix Bootstrapper。他们是一样的东西。 Burn仅是Wix Bootstrapper的名称,但是它们的确在“ wix burn”和“ wix bootstrapper”之间切换。但是正如我所说的,它们是同一回事。
这是我的wix引导程序,它检查.net的版本,然后在安装.msi之前下载并安装它。您将需要添加对WixNetFxExtension.dll的引用
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:bal="http://schemas.microsoft.com/wix/BalExtension" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
<Bundle Name="MyProgramInstaller" Version="1.0.0.0" Manufacturer="myCompany" UpgradeCode="yourcodehere">
<!-- here's the license statement, would suggest you update this to something more useful. -->
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense" />
<Chain>
<!-- here's the .net download installer you can change this using the following chart -->
<!-- http://wixtoolset.org/documentation/manual/v3/customactions/wixnetfxextension.html -->
<PackageGroupRef Id="NetFx451Web"/>
<MsiPackage Id="myProgram" SourceFile="$(var.SolutionDir)SetupProject1/bin/Release/myProgramInstaller.msi"/>
</Chain>
</Bundle>
</Wix>