Forced MSI Uninstall —— 解决 MSI 安装器的"更改/修复"绕回
问题的根源
有些用 MSI(Microsoft Installer)格式打包的程序,其 Uninstall String 指向的不是"卸载"动作,而是"修改/修复"动作。典型表现:
- 在"程序和功能"里点卸载
- 程序弹出的不是卸载向导,而是"更改安装组件"或"修复安装"界面
- 你取消掉、想卸载 → 又弹回来
这是因为这些 MSI 包把卸载命令指向了 /i(install 模式)而不是 /x(uninstall 模式),或者安装器本身的逻辑有缺陷——点任何按钮都是在重新安装。
Forced MSI Uninstall 解决什么
Forced MSI Uninstall 是 Revo Uninstaller Pro 专门为 MSI 程序设计的一个强制卸载命令。它绕过程序自己的卸载器逻辑,直接调用 MSI 的标准卸载命令(msiexec /x {ProductCode}),然后像 Forced Uninstall 一样扫残留。
怎么用
Forced MSI Uninstall 不是一个独立模块,而是 All Programs 模块里的右键菜单项。只有当选中的程序满足以下两个条件时才会出现:
- 该程序的卸载字符串指向 MSI 安装器(
MsiExec.exe) - 它的默认卸载动作不是真正的卸载(比如是 Modify/Repair)
操作步骤
- 打开 All Programs(Alt+U)
- 找到那个"卸不掉"的 MSI 程序
- 右键它 → 如果菜单里有 Forced MSI Uninstall 选项,说明它符合条件
- 点 Forced MSI Uninstall
- Revo 强制调用 msiexec /x 标准卸载命令
- 卸载完成后自动扫描残留(默认 Moderate 强度)
- 按标准流程清理注册表和文件残留
对比普通 Uninstall
| 对比 | 普通 Uninstall | Forced MSI Uninstall |
|---|---|---|
| 调用命令 | 程序的 Uninstall String(可能是 /i) | 强制 msiexec /x {ProductCode} |
| 触发方式 | 工具栏 Uninstall 按钮 | 右键菜单专用项 |
| 出现条件 | 所有程序 | 仅 MSI 格式 + 卸载命令有缺陷 |
| 后续扫描 | 卸完后扫 | 同 |
什么时候这个功能会出现
Revo Uninstaller Pro 在解析程序注册表条目时,会检查 Uninstall String 的实际内容——如果发现它虽然是 MSI 安装器,但参数不是 /x 而是 /i 或 /f,就在右键菜单里显示 Forced MSI Uninstall。
普通 MSI 程序(卸载命令正常的)不会显示这个选项。所以如果你右键菜单里没有 Forced MSI Uninstall,说明你选中的程序没有这个问题,用普通 Uninstall 就行。