如何在 Windows 上卸载 Beyond Compare 5
卸载 Beyond Compare 前先退出,如果以后可能重装,把授权码留一份备份,它按 Windows 账号登记,存在下面这份指南列出的注册表键里。这份指南覆盖用 ScooterSoftware.BeyondCompare.5 winget 包按用户安装的 Beyond Compare 5。
先退出 Beyond Compare
关闭所有 Beyond Compare 窗口,卸载前在任务管理器(Ctrl+Shift+Esc)里确认没有 BCompare.exe 还在。
用自带的卸载器移除应用
打开「设置 › 应用 › 已安装的应用」,找到 Beyond Compare 5,选择卸载,或者运行:
winget uninstall --id ScooterSoftware.BeyondCompare.5
数据分别在哪里
| 位置 | 里面是什么 | 如何处理 |
|---|---|---|
%APPDATA%\Scooter Software\Beyond Compare 5 |
设置 | 先备份再处理 |
HKCU\SOFTWARE\Scooter Software\Beyond Compare 5 |
设置和授权码 | 打算重装并想保留已经输入的授权码,先备份 |
检查结果
卸载完成后运行下面几条只读命令:
Get-Process BCompare -ErrorAction SilentlyContinue
winget list --id ScooterSoftware.BeyondCompare.5
Test-Path "$env:LOCALAPPDATA\Programs\Beyond Compare 5"
Test-Path "$env:APPDATA\Scooter Software\Beyond Compare 5"
Get-ItemProperty "HKCU:\SOFTWARE\Scooter Software\Beyond Compare 5" -ErrorAction SilentlyContinue
Get-Process没有输出只表示未观察到匹配进程,被忽略的查询错误不能当作已经退出。winget list正常完成且没有匹配,才说明包记录已经没了;列出一行,说明卸载没完成。- 第一条
Test-Path返回False,说明程序目录已经没了;返回True,说明那里还有文件。 Test-Path "$env:APPDATA\Scooter Software\Beyond Compare 5"返回True,说明设置还在,只要你没有自己删掉,这就是正常的。Get-ItemProperty返回设置值表示该项仍在,没有输出时还要确认查询没有权限或其他错误,不能只凭空输出判断已删除。
用 winget 安装时
winget uninstall 运行的是「设置 › 应用」用的同一个卸载器,删的是同一批程序文件,它不会主动动 %APPDATA%\Scooter Software\Beyond Compare 5 或者上面那个注册表键。
Mole 会列出什么
对按用户安装的 winget 版 Beyond Compare 5:
- 程序目录、桌面快捷方式和开始菜单快捷方式默认勾选。
%APPDATA%\Scooter Software\Beyond Compare 5会列出,但默认不勾选。HKCU\SOFTWARE\Scooter Software\Beyond Compare 5会列出,但默认不勾选。- 三个登记 Beyond Compare 外壳集成的注册表键默认勾选。
- 卸载器留下、仍指向已经删除程序的
BCClipboard登录启动项默认勾选,删除前先备份成.reg文件。 - 上一级共享的厂商键
HKCU\Software\Scooter Software不会列出来,Mole 不会去收一个共享的厂商父键。名字里不带版本号的另一个键HKCU\Software\Scooter Software\Beyond Compare也不会列出来,想彻底清空自己去检查。
这次检查覆盖了什么
测试的是通过 winget 按用户安装的 Beyond Compare 5.2.6.32774,在 ARM64 测试虚拟机上。这次是在提权环境里安装的,所以卸载器要了管理员权限,普通的按用户安装不会要。
