Windows命令行卸载软件有五种方法:一、WMIC卸载MSI程序;二、PowerShell调用WMI按GUID卸载;三、msiexec静默卸载MSI包;四、PowerShell卸载UWP应用;五、DISM禁用Windows可选功能。

如果您希望在Windows系统中通过命令行方式卸载已安装的软件,但未使用图形界面操作,则可能是由于需要批量处理、远程管理或绕过常规卸载限制。以下是多种可行的命令行卸载方法:
一、使用WMIC命令卸载MSI类程序
WMIC是Windows内置的命令行管理工具,可直接调用WMI服务查询和卸载符合Windows Installer规范的程序。该方法适用于绝大多数通过.msi安装包部署的应用。
1、按下Win + X组合键,选择终端(管理员)或命令提示符(管理员)。
2、输入以下命令列出所有已安装程序名称:
wmic product get name
3、在返回结果中准确识别目标软件的完整显示名称,注意区分大小写与空格。
4、执行卸载指令,将“Example Software”替换为实际名称:
wmic product where name="Example Software" call uninstall
5、当提示“是否确认执行”时,输入Y并按回车;若名称不匹配或权限不足,命令将无响应或报错。
二、使用PowerShell调用WMI接口卸载
PowerShell提供更稳定的WMI交互能力,尤其适合名称含特殊字符、引号或模糊匹配失败的情况。它通过IdentifyingNumber(GUID)精准定位,避免名称匹配误差。
1、以管理员身份启动Windows PowerShell(非PowerShell 7+的跨平台版本)。
2、运行命令获取软件列表及对应标识号:
Get-WmiObject -Class Win32_Product | Select-Object Name, IdentifyingNumber
3、在输出中找到目标软件,复制其IdentifyingNumber值(形如{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX})。
4、执行卸载命令,将示例中的GUID替换为实际值:
(Get-WmiObject -Class Win32_Product -Filter "IdentifyingNumber='{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}'").Uninstall()
5、命令返回ReturnValue = 0表示成功;若返回1603或1618,说明存在进程占用或依赖冲突。
三、调用msiexec.exe静默卸载MSI包
对于明确知道产品代码(ProductCode)或.MSI安装源路径的程序,可直接调用Windows Installer服务执行静默卸载,无需触发图形向导,适合脚本集成。
1、获取目标程序的ProductCode:可通过PowerShell命令
Get-WmiObject -Query "SELECT ProductCode FROM Win32_Product WHERE Name='Example Software'" | Select-Object ProductCode
2、在管理员终端中运行静默卸载命令:
msiexec /x {XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX} /qn
3、若已知原始MSI文件路径,亦可使用:
msiexec /x "C:\path\to\installer.msi" /qn
4、/qn参数确保全程无界面、无提示;若需日志记录,追加/l*v "C:\uninstall.log"。
四、使用PowerShell卸载UWP应用(仅限Microsoft Store安装)
传统WMIC无法管理UWP应用,必须使用PowerShell的AppX模块。该方法专用于卸载从微软商店安装的现代应用,不适用于桌面程序。
1、以管理员身份打开Windows PowerShell。
2、列出当前用户安装的所有UWP应用:
Get-AppxPackage | Select-Object Name, PackageFullName
3、根据Name字段筛选目标应用,提取其PackageFullName值。
4、执行卸载命令,将示例中的包名替换为实际值:
Remove-AppxPackage 8wekyb3d8bbwe
5、若需为所有用户卸载,添加-allusers参数:
Remove-AppxPackage 8wekyb3d8bbwe -AllUsers
五、通过DISM工具移除Windows可选功能组件
部分系统级功能(如.NET Framework 3.5、Telnet客户端、打印服务等)并非独立软件,而是Windows可选功能,需使用DISM命令启用或禁用。
1、以管理员身份运行终端。
2、查看当前已启用的可选功能列表:
dism /online /get-features /format:table
3、查找目标功能的FeatureName,例如:NetFx3、TelnetClient。
4、执行禁用命令:
dism /online /disable-feature /featurename:TelnetClient /norestart
5、/norestart参数防止自动重启;若功能被其他组件依赖,命令将提示错误并终止。










