WiX v3.7——支持 MSBuild、自更新及引用计数

阅读数:1530 2013 年 1 月 11 日

话题:语言 & 开发

最近发布的Windows Installer XML (WiX) 工具包 v3.7包含了对MSBuild的完整支持,并使开发者能够通过Bootstrapper应用程序来实现程序的自更新(self-update)。此版本还包含了引用计数(reference-counting)功能,借助该功能,Burn 引擎能够对引用的 MSI 和 MSP 包进行自动计数。

WiX使开发人员能够从 XML 源代码创建Windows安装包。该工具包能够编译源代码,我们可以组合使用这些工具来创建各种可执行文件,比如:

隶属于Outercurve 基金会的 WiX 包括一个命令行构建工具,能够与任何自动构建系统结合使用。此外,MSBuild 不仅支持命令行模式,也可与Visual Studio 2012Team Build集成。

除了创建 Windows 安装包,WiX 工具包还包含了一些扩展来进行功能扩充,如建立 IIS 站点、创建 SQL Server 数据库和设置 Windows 防火墙例外等。在 WiX SDK 原生和托管库的帮助下,开发人员可以编写 C# 或 C++ 代码与 Windows Installer 进行交互。

Wix 中包含了Votive,这是一个Visual Studio 插件,使你能够通过 Visual Studio 集成开发环境(IDE)创建并构建 WiX 安装项目,还支持.wxs源文件的语法高亮智能感知。它还在 Visual Studio 中添加了一个 WiX 安装项目类型,可以通过文件(File)下的菜单使用。

WiX 的内部结构包含以下组件:

  • Candle——编译器
  • Light——链接器
  • Lit ——库工具
  • Dark——反编译器
  • Tallow/Heat——根据目录树生成 WiX 文件列表代码的工具
  • Pyro——创建补丁文件(msp)的工具
  • Burn——引导程序(Bootstrapper)

几个开发人员在大量地使用了 WiX 工具集后,已经提交了一些Bug

Steve 报告说:

安装了 WiX 3.7 之后,无法打开已有的 Visual Studio 2008 WiX 项目。

Brian评论道:

在 Windows 7 64 位平台中安装 Wix37.exe 存在问题。用户界面仅仅显示“错误,请重试”的消息。我不确定这是什么问题。我的系统安装有 Wix 3.6、VS2010 和 VS2012。

Greg Duncan说:

虽然更新不算很大,但个人认为这样更好。我更喜欢这样快节奏的更新。我有一种强烈的预感,过段时间我还会来这里看看 WiX。

参考

  1. WiX 手册
  2. WiX 教程
  3. 图书《WiX 3.6:Windows Installer XML 开发者指南》
  4. How to: 安装 Windows Installer XML (WiX) 工具
  5. 为 ASP.NET Web 应用程序创建 WIX Installer
  6. 使用 MSBuild 和 WindowsInstaller XML 执行自动发布
  7. Windows Installer XML 初学者指南

查看英文原文WiX v3.7 - MSBuild, Self Update and Reference Counting


感谢臧秀涛对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。