无法更新或卸载TortoiseGit:Windows Installer报1723及1157错误
遇到这种安装/卸载全卡壳的情况确实闹心,结合你给出的日志来看,UnregisterSparsePackage动作返回1157错误,本质是系统找不到或无法正常运行安装所需的DLL文件,大概率是临时文件冲突、Windows Installer组件损坏,或者系统核心文件缺失导致的。给你整理几个逐步排查的解决方案:
清理Windows Installer临时文件
先关掉后台可能残留的安装进程:打开任务管理器,找到msiexec.exe进程右键结束。然后打开资源管理器,导航到C:\WINDOWS\Installer,删掉日志里提到的MSI623.tmp这类临时文件(如果找不到目标文件,清理近期所有MSI开头的tmp文件也可以),之后再尝试卸载或升级操作。重新注册Windows Installer服务
按下Win+R调出运行窗口,输入cmd后右键选择「以管理员身份运行」,依次执行以下命令:msiexec /unregister msiexec /regserver这两步会重置Windows Installer的注册信息,修复可能的组件损坏问题。
修复系统文件完整性
还是在管理员命令提示符里,先运行系统文件检查器:sfc /scannow这个命令会自动扫描并修复系统中损坏或缺失的文件(包括安装依赖的DLL)。如果SFC提示无法修复所有问题,再运行DISM工具修复系统镜像:
DISM /Online /Cleanup-Image /RestoreHealth使用专用卸载修复工具
可以试试微软的「Program Install and Uninstall Troubleshooter」,这个工具能自动检测并修复安装/卸载流程里的常见问题,包括Windows Installer的报错。运行它后选择对应问题(卸载或安装失败),跟着引导操作即可。另外,也可以找到你当初安装TortoiseGit 2.15版本的安装包,右键选择「卸载」,尝试先完整卸载旧版本再装新的。手动清理注册表(谨慎操作)
如果以上方法都无效,可能是Sparse Package的注册信息损坏了。先备份注册表(注册表编辑器顶部「文件」→「导出」),然后打开注册表编辑器(Win+R输入regedit,用管理员权限打开),导航到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SparsePackages,找到和TortoiseGit相关的条目删除,之后再尝试操作。这一步一定要谨慎,误删其他条目可能导致系统异常。
建议从前面简单的方法开始试,一般就能解决问题了。
备注:内容来源于stack exchange,提问作者Berend




