卸载软件bat命令
时间: 2025-07-06 17:02:57 AIGC 浏览: 48
在 Windows 系统中,可以通过 BAT 脚本调用 `MsiExec.exe` 命令来卸载基于 MSI 安装包的软件。使用 BAT 脚本卸载程序的核心步骤是获取目标软件的产品代码(ProductCode),并结合静默参数实现无交互卸载。
以下是一个基本的卸载脚本示例:
```bat
@echo off
setlocal
:: 设置日志文件路径
set logfile=%temp%\uninstall_log.txt
:: 定义软件名称和产品代码
set SoftwareName=Example Software
set ProductCode={12345678-9ABC-DEF0-1234-56789ABCDEF0}
:: 输出开始信息到日志
echo Uninstalling %SoftwareName%...
echo %SoftwareName% Start: %date% %time% >> "%logfile%"
:: 执行卸载命令,/qn 表示静默模式,/Lwme+ 记录详细日志
MsiExec.exe /X%ProductCode% /qn /Lwme+ "%logfile%"
:: 检查错误代码
if %ERRORLEVEL% EQU 0 (
echo Uninstall %SoftwareName% Successfully.
echo Uninstall %SoftwareName% Successfully. >> "%logfile%"
) else if %ERRORLEVEL% EQU 1605 (
echo %SoftwareName% is not installed or already uninstalled.
echo Uninstall failed, ERRORLEVEL: %ERRORLEVEL%. >> "%logfile%"
) else (
echo Uninstall %SoftwareName% Failed, ERRORLEVEL: %ERRORLEVEL%.
echo Uninstall failed, ERRORLEVEL: %ERRORLEVEL%. >> "%logfile%"
)
:: 输出结束信息到日志
echo %SoftwareName% End: %date% %time% >> "%logfile%"
endlocal
```
### 参数说明:
- `/X{ProductCode}`:指定要卸载的软件产品代码。
- `/qn`:安静模式,不显示任何用户界面[^4]。
- `/Lwme+ [logfile]`:记录详细的安装或卸载日志,便于排查问题[^5]。
- `ERRORLEVEL`:检查返回值以判断卸载是否成功。
### 注意事项:
1. **获取 ProductCode**:可通过注册表查找(路径如 `HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall`)或使用第三方工具(如 `MSI Zilla` 或 `Orca`)查看 MSI 包属性。
2. **权限问题**:如果脚本需要管理员权限才能执行,请右键选择“以管理员身份运行”。
3. **兼容性**:仅适用于通过 MSI 安装的软件;对于非 MSI 安装的程序,可能需要其他方式卸载,例如调用其自带的卸载程序。
---
阅读全文
相关推荐





