如何从自定义操作 DLL 检查它是否是静默安装?
How to check if it's a silent installation from the custom action DLL?
当我的安装程序使用 msiexec /q /i
命令行启动时,有没有办法从我的自定义操作 C++ DLL 中判断它是静默安装?
PS。我正在使用 WiX 构建我的 MSI。
Windows 安装程序的 UILevel property 会告诉您安装程序是否已静默启动。四种不同的 UI 水平是可能的:
INSTALLUILEVEL_NONE
- 2
- 开关:/qn
- 完全静默安装。
INSTALLUILEVEL_BASIC
- 3
- 开关:/qb
- 简单的进度和错误处理。
INSTALLUILEVEL_REDUCED
- 4
- 开关:/qr
- 创作 UI,向导对话框被抑制。
INSTALLUILEVEL_FULL
- 5
- 作者 UI 有向导、进度、错误 ( /qf).
UILevel 可能更好地用于将整个自定义操作设置为 运行 或不 运行 取决于 UILevel 设置的内容?或者您可以在自定义操作中获取它的值并相应地更改行为。
基本链接:
更多链接:
- Debug C# custom actions
- Determine if this is unattended installation mode?
UPDATE:从旧的 Wise Command Line Builder 工具,这里是 MSI GUI 的一些选项。注意使用加号和减号来显示或隐藏静默安装的完成屏幕:
当我的安装程序使用 msiexec /q /i
命令行启动时,有没有办法从我的自定义操作 C++ DLL 中判断它是静默安装?
PS。我正在使用 WiX 构建我的 MSI。
Windows 安装程序的 UILevel property 会告诉您安装程序是否已静默启动。四种不同的 UI 水平是可能的:
INSTALLUILEVEL_NONE
-2
- 开关:/qn
- 完全静默安装。INSTALLUILEVEL_BASIC
-3
- 开关:/qb
- 简单的进度和错误处理。INSTALLUILEVEL_REDUCED
-4
- 开关:/qr
- 创作 UI,向导对话框被抑制。INSTALLUILEVEL_FULL
-5
- 作者 UI 有向导、进度、错误 ( /qf).
UILevel 可能更好地用于将整个自定义操作设置为 运行 或不 运行 取决于 UILevel 设置的内容?或者您可以在自定义操作中获取它的值并相应地更改行为。
基本链接:
更多链接:
- Debug C# custom actions
- Determine if this is unattended installation mode?
UPDATE:从旧的 Wise Command Line Builder 工具,这里是 MSI GUI 的一些选项。注意使用加号和减号来显示或隐藏静默安装的完成屏幕: