我已经安装了一些带有GUID的MSI(0733556C-37E8-4123-A801-D3E6C5151617)。 在注册表中注册的程序: HKEY_LOCAL_MACHINE \ SOFTWARE \微软\的Windows \ CurrentVersion \卸载\()如何查找注册表中的程序位置,如果我知道MSI GUID?
价值 UninstallString = MSIEXEC.EXE/I(0733556C-37E8-4123-A801-D3E6C5151617)
我的问题是:在删除程序时,MsiExec.exe实用程序如何知道要运行的文件的名称和路径?在注册表中可以找到这些信息?
已经有非常好的答案了,但**最简单的方法**获取有关已安装产品的信息可能是[**使用简单的PowerShell命令**](https://stackoverflow.com/questions/29937568/how -can-i-find-the-product-guid-an-installed-msi-setup/29937569#29937569) – 2017-08-20 18:02:34
再读一遍我想我误解了你的问题。我想你的问题的实际答案是,有关已安装产品的所有信息都存储在注册表下的HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Installer中。这是** Windows安装程序数据库**,您不能直接在此触摸任何值。您可以通过[Win32 API调用(C++)](https://msdn.microsoft.com/en-us/library/windows/desktop/aa369426(v = vs.85).aspx)访问它们,也可以使用[COM automation](https://msdn.microsoft.com/en-us/library/windows/desktop/aa367810(v = vs.85).aspx)(更简单)。 – 2017-10-07 22:06:40