我正在嘗試編寫一個批處理腳本,它將搜索註冊表並將UninstallString的值添加到一個變量中。
有幾個注意事項:
1.鍵可以是在不同的工作站不同(取決於所使用的安裝程序,存在samesoftware版本的多個修改版本MSI)
2.沒有與已安裝的補丁的主要產物
3該補丁必須先卸載主產品之前批處理文件:搜索註冊表並設置多個變量
例如,思科監事桌面軟件可能包含以下鍵值:
補丁3
KEY: HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \微軟\的Windows \ CurrentVersion \卸載{981E3887-9D55-4B91-B643-7155AA98C906}
顯示名稱值:思科桌面服務8.5(4)維護版本4類技術6
UninstallString值: MSIEXEC.EXE/X {981E3887-9D55-4B91-B643-7155AA98C906}
補丁2
KEY: HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \微軟\的Windows \ CurrentVersion \卸載{4FA5AFA8 -FDEB-43C9- 83B7-43092593ACDF}
DisplayName值:思科桌面服務8.5(4)維護版本4工程特別4
UninstallString值: MSIEXEC.EXE/X {4FA5AFA8-FDEB-43C9-83B7-43092593ACDF}
補丁1:
KEY: HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \微軟\的Windows \ CurrentVersion \卸載{CA941834-837E-44C2-BF83-E7E7558FDD61}
顯示名稱值:思科桌面服務8.5(4)維護版本4
UninstallString值: MSIEXEC.EXE/X {CA941834-837E-44C2-BF83-E7E7558FDD61}
主要產品:
KEY: HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \微軟\的Windows \ CurrentVersion \卸載
顯示名稱值:思科監事桌面
UninstallString值: MSIEXEC.EXE/X {AB60EBDC-45A9- 4764-96CB-EFCE4AD0C10B}
他們必須按照這個順序被卸載。當安裝多個版本時,還有可能在註冊表中存在其他密鑰。
我想搜索功能可以使用DisplayName值思科桌面服務,因爲它是爲所有的補丁然後爲思科主管代理單獨的搜索通用補丁創建。
我現在有WMIC命令,但有時他們可以運行,而如果我手動運行UninstallString值很快完成極其緩慢。我還有一些情況,即在UninstallString值會出現WMIC命令不會卸載產品的情況。如果這是可能
任何幫助,將不勝感激。
'reg'效用爲基礎的方法是最快的的確,看看[我怎麼能自動卸載使用批處理文件,其中包含「VNC」在他們的顯示名稱的所有程序?(http://stackoverflow.com/a/33279973)如果你可以調整它,它自己, – wOxxOm
謝謝您。這似乎很適合查找卸載字符串。你知道一種安排卸載的方法,以便它們以特定順序卸載嗎? –
我想可能有很多種方法。例如,你可以使一個「陣列」與所有的卸載字符串 – wOxxOm