带有自定义 /a 参数的 WiX 引导程序静默安装

Posted

技术标签:

【中文标题】带有自定义 /a 参数的 WiX 引导程序静默安装【英文标题】:WiX bootstrapper silent install with custom /a argument 【发布时间】:2017-03-08 06:27:28 【问题描述】:

是否可以通过使用/a/arg 格式的命令行参数来启动WiX 捆绑包的静默安装?

我知道available command line arguments accepted by the wixstdba bootstrapper。

具体来说,我们需要使用参数/s /v/qn 参数来做到这一点。

注意:使用命令行setup.exe /s /v/qn 执行引导程序实际上会启动静默安装,我认为这是因为BA 将/s 解释为等同于-s。但是由于我在任何地方都找不到这种行为的记录,所以我对依赖它感到紧张,并且更喜欢一种明确的方法来做到这一点。

TL;DR

我们之所以支持这个论点/format,是因为之前版本软件的自动升级操作。这个版本的软件启动了一个自动下载的升级,它是一个 InstallShield 包,带有开关/s /v/qn 以启动 MSI 作为静默安装。这些开关被编码到一个常量字段中,因此我们从 InstallShield 迁移到 WiX 的事实提出了这个问题。

我们希望复制此功能,但需要一种方法将这组参数转换为 -silent-passive 参数,或找到其他方法来完成此任务。

【问题讨论】:

【参考方案1】:

Burn 支持 -/ 作为切换字符。静默 UI 模式支持为 qquietssilent,前导 -/。请参阅https://github.com/wixtoolset/wix3/blob/develop/src/burn/engine/core.cpp#L1098 处的代码。

【讨论】:

这让我对当前的行为感觉更好 :-)

以上是关于带有自定义 /a 参数的 WiX 引导程序静默安装的主要内容,如果未能解决你的问题,请参考以下文章

WiX - 将参数从 MSI 传递到 Xeam 引导程序应用程序

Wix静默安装MSI我们可以停止创建目录吗

如何防止 wix 自定义引导程序卸载 UI 在升级过程中显示

自定义 WiX Burn 引导程序用户界面?

Wix Burn:自定义引导程序升级,但与旧版本并排安装

WiX - 带有安装和卸载(或回滚)参数的多个自定义操作