我一直在搜索和搜索,但没有得到一个好的答案。我试图在软件的UninstallString的两个位置查询注册表。
-HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall
-HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall
UninstallString
需要设置为变量或管道直接运行msiexec.exe /x {GUID} /qn
。
我希望这可以在powershell中使用,也可以命令我使用它。
答案 0 :(得分:0)
@ECHO OFF
SETLOCAL
set "uninstall1="
FOR /F "tokens=2*" %%A IN (
'REG QUERY "HKLM\Software\Microsoft\Windows\CurrentVersion" /v Uninstall'
) DO (set Uninstall1=%%B)
set uninstall
这应检索第一个字符串(如果存在)。
重复第二个字符串的公式。最终的SET uninstall
仅用于报告从UNINSTALL
开始进行验证的环境变量。
然后
if defined Uninstall1 msiexec ... "%Uninstall1%"
应该使用您需要的参数执行MSIEXEC
(其中......是您的选项 - / x,/ qn无论如何)