基本上,通过转到控制面板 > 卸载程序 > 查看已安装的更新 > 右键单击卸载,但通过命令行可以实现什么?正在寻找一种适用于 Windows 平台的方法,但如果(根据我的阅读,最有可能)它依赖于版本,那就这样吧。
也许是这样的:
C:\command /uninstall “适用于基于 x64 的系统的 Windows 7 安全更新 (KB2705219)”
看起来使用 KB 会很棒,但是 wusa.exe 适用于上述示例更新,但不适用于“Silverlight 安全更新 (KBXXXXXXXX)”。一致性不高。
我真的很惊讶这方面没有太多的文档。像安装做吗?
后续问题是“查看已安装更新”列表是如何填充的?我疯狂地搜索注册表,希望找到“UninstallString”或等效项,但只找到对常规添加/删除程序列表的引用。
答案1
对于 Server 2003 和 XP,您可以尝试:
C:\WINDOWS\$NtUninstallKB940157$\spuninst\spuninst.exe /quiet /norestart
其中 KB 编号就是您想要杀死的 KB。
答案2
您可以使用wusa /uninstall /kb:{updateid}
http://www.sevenforums.com/tutorials/109213-windows-update-uninstall-console-level.html
答案3
我发现这个实用程序非常好: https://bitbucket.org/kazenoco/windows-updates-uninstaller-utility/downloads/Windows%20Updates%20Uninstaller.exe
Windows 更新卸载实用程序 此实用程序(以 AutoHotKey 编写)允许您从系统中批量卸载所需的 Windows 更新。它不会卸载服务包,因此您需要手动卸载它们。适用于 Windows XP、Vista、7、8 和 8.1。 安装 无需安装任何东西,可执行文件是可移植的,因此您只需下载并运行它即可。可执行文件在运行时将在其父目录中创建一个临时文本文件,一旦不再需要它,它就会自动将其删除。