小智 29
您可以使用 WMIC 在不知道 GUID 等的情况下调用正确的卸载程序。
要查看 Windows 内部已知的程序名称列表:
wmic product get name
Run Code Online (Sandbox Code Playgroud)
查找您的产品名称。它可能与“程序和功能”控制面板中列出的匹配,但并非总是如此。
然后你可以使用
wmic product where name="_my_product_name" call uninstall
Run Code Online (Sandbox Code Playgroud)
执行卸载,AFAIK 应该是静默的(这是我的经验,但在你赌农场之前尝试它。静默可能取决于你的安装程序/卸载程序的构建方式)。
请参阅此处了解更多信息:
microsoft.com 上还有 WMIC 的参考文档。
nhi*_*kle 21
根据 Microsoft 的指导原则正确安装自身的每个程序都会在HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall
. 通常,程序的键是它的 GUID,否则就是程序的名称。在该键中将有一个名为 的条目UninstallString
。这包含要执行以卸载程序的命令。
如果您已经提前知道要卸载的内容,那么将其放入批处理文件中应该很容易。但是,当您尝试自动化该过程时,它会变得棘手。您可以使用该reg
命令从注册表中获取数据,但它会返回大量围绕给定键的实际值的文本,使其难以使用。您可能想尝试使用 VBscript 或 PowerShell,因为它们有更好的选择来将数据从注册表获取到变量中。
如果您安装了 PowerShell 3(或更高版本),您可以发出 WMI 调用来获取所有命名为某个事物的程序(或“喜欢”某个事物,以进行通配符搜索),然后Uninstall
为每个程序调用该方法:
(Get-WmiObject -Query "SELECT * FROM Win32_Product WHERE Name like '%Partial Name%'").uninstall()
如果程序使用 Windows Installer,您可以使用以下命令之一:
msiexec /q /x <ProductCodeGuid>
msiexec /q /x <PathToMsi>
Run Code Online (Sandbox Code Playgroud)
但是,您可能既没有产品代码,也没有用于安装的原始 MSI 文件。
除此之外,没有通用的卸载命令,因为操作系统“不知道”不使用 Windows Installer 的安装程序。他们可能会提供自己的卸载可执行文件,但该可执行文件是否包含无需 GUI 即可运行它的方法取决于各个软件包。
归档时间: |
|
查看次数: |
220117 次 |
最近记录: |