Windows 注册表 - UninstallString 与 QuietUninstallString

Windows registry - UninstallString vs QuietUninstallString

我正在我的自定义安装程序脚本中编写一些注册表项,我想知道同时包含 UninstallStringQuietUninstallString.

有什么影响

如果两个条目都存在,如何从cmd/PowerShell控制卸载程序调用方式(静默模式或非静默模式)?

Key UninstallString mandatory 包含一般卸载包的命令。如果用户手动卸载(通过控制面板),则使用此密钥。卸载程序通常不会 运行 保持沉默,甚至不会与用户互动(即他们会提问)。

惯例是QuietUninstallString包含一个静默卸载包的命令。写入此键的命令不应交互(例如询问用户)。此键是可选的。

如果您的包具有非交互式卸载模式(恕我直言总是一件好事)您应该创建这个附加密钥。

如果您的卸载程序总是 运行 无声(为什么不),您应该将命令写入两个键。

尝试静默卸载软件的脚本应该检查(和 运行)QuietUninstallString。如果缺少此密钥,则命令行在 UninstallString 运行 中保持沉默的可能性很小。