使用 WiX 命令行工具 Wix.exe 的完整指南

WiX 工具集(WiX Toolset)是创建 Windows 安装包(如 MSI 和 EXE)的强大工具,而 Wix.exe 是其核心命令行工具,提供了高效的方式来构建、管理和操作安装包。本文将全面介绍 Wix.exe 的功能及使用方法。


Wix.exe 的功能概述

Wix.exe 支持多种命令,每个命令专注于特定任务,例如构建安装包、反编译 MSI 文件、管理扩展等。

支持的命令

命令描述
wix build构建安装包(如 MSI)或库文件(如 .wixlib)。
wix msi操作 MSI 包(如反编译、验证、创建变换文件)。
wix burn操作 Burn 引导程序(如提取内容、重新附加等)。
wix extension管理 WiX 扩展(添加、移除或列出扩展)。
wix convert将 WiX v3 源代码转换为 v4 格式。
wix format格式化 WiX 源代码,确保一致性。

通用选项

选项描述
--help-h显示命令帮助信息。
--version显示当前使用的 WiX 工具版本。
--nologo禁止显示工具标识信息。

命令详解

1. wix build 构建安装包

用途

wix build 用于构建 MSI 安装包、EXE 引导程序或 WiX 库文件(.wixlib)。

语法
wix build [选项] source_file.wxs [source_file.wxs ...]
常用选项
选项描述
-arch arch指定架构(x86、x64、arm64)。默认为 x86。
-loc path指定本地化文件(如 .wxl)。
-o path指定输出文件路径和名称(如 MyApp.msi)。
-ext id加载 WiX 扩展(如 WixToolset.Util.wixext)。
-pdb path指定输出 .wixpdb 调试文件的路径。
示例

构建单个 MSI 包:

wix build Product.wxs -o MyAppInstaller.msi

构建并添加本地化支持:

wix build Product.wxs -loc Product.en-us.wxl -o MyAppInstaller.msi

2. wix msi 操作 MSI 包

wix msi 提供了一组子命令,用于操作 MSI 包(如反编译、验证等)。

a. 反编译 MSI 包

反编译 MSI 包为 WiX 源代码:

wix msi decompile input.msi -o output.wxs
选项描述
-data反编译为 WiX 数据文件而不是源代码。
-x path导出嵌入的二进制文件(如图标)。
-o path指定输出文件路径。
b. 验证 MSI 包

验证 MSI 包的内部一致性:

wix msi validate input.msi
选项描述
-cub path指定自定义验证规则文件(.cub)。
-ice id指定使用特定的 ICE 验证器。
-sice id跳过特定的 ICE 验证器。

3. wix burn 操作 Burn 引导程序

wix burn 提供了一组子命令,用于提取和签名 Burn 引导程序(EXE 安装包)。

a. 提取引导程序内容

提取 Burn 引导程序的内容到指定目录:

wix burn extract bundle.exe -o extracted_folder
b. 重新附加引导程序

重新附加签名的引擎到 Burn 引导程序:

wix burn reattach original.exe -engine signed_engine.exe -o final_bundle.exe

4. wix extension 管理扩展

wix extension 用于管理 WiX 扩展(如添加、移除或列出扩展)。以下是常用子命令:

a. 添加扩展

安装一个扩展到全局缓存:

wix extension add WixToolset.Util.wixext/5.0.1
b. 列出扩展

列出所有已安装的扩展:

wix extension list

5. wix convert 转换 WiX v3 代码

将 WiX v3 的源代码转换为 WiX v4 格式:

wix convert v3_file.wxs -o v4_file.wxs
选项描述
--dry-run仅显示转换错误,但不更新文件。
-r递归搜索当前目录及子目录中的文件进行转换。

6. wix format 格式化代码

格式化 WiX 源代码,确保缩进和命名一致性:

wix format source.wxs
选项描述
--dry-run仅显示格式问题,不修改文件。
-r递归格式化当前目录及子目录中的文件。

更多用法示例

构建复杂项目

如果项目包含多个 .wxs 文件,可以同时传递它们到 wix build 命令:

wix build Product.wxs Fragment1.wxs Fragment2.wxs -o MyApp.msi

自定义安装路径

使用 -loc 指定本地化文件,并通过自定义属性调整安装路径:

wix build Product.wxs -loc MyAppLocalization.wxl -o CustomPathInstaller.msi

总结

Wix.exe 是 WiX 工具集中功能强大的命令行工具,支持构建、验证、提取、格式化等多种操作,为安装包的开发提供了极大的灵活性。通过学习上述命令和选项,你可以轻松完成从简单到复杂的安装包开发任务。

如需更详细的参考,可以访问 WiX 官方文档

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值