我知道所有已安装的程序和更新都可以在 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
中找到
注册表中的密钥。
但是,如何区分已安装的程序和已安装的更新?
答案 0 :(得分:1)
我认为更新的值(默认值)通常以KB开头。真正的安装将具有DisplayName。另外,我会忽略SystemComponent设置为1的事情。
答案 1 :(得分:0)
调用MsiEnumProducts()将为您提供系统上所有已安装产品的产品代码。对于每个已安装的产品,请致电MsiGetProductInfo(),为您提供有关该产品的信息。
这比使用基于注册表的解决方案更直接。
This应该是一个很好的起点:
我相信你可以从c#调用c ++函数。