【发布时间】:2011-11-12 18:12:21
【问题描述】:
我正在尝试构建已安装应用程序的列表,类似于控制面板中添加/删除程序列表中的列表。
我试过使用Win32_Product WMI Class 和MsiEnumProducts。
它们都输出了非常相似的输出,但都缺少添加/删除程序中的程序。例如,我知道我安装了 Adobe Flash Player,但它不在这些列表中。
我一直在努力避免读取注册表,因为我读过最好使用一些 API 来检索列表,但到目前为止我发现的方法都没有奏效。
还有其他可以使用的内置 API/COM 方法吗?还是我应该尝试从注册表中读取所有内容?
还...
注册表中有一些程序不在“添加/删除程序”列表中,例如我安装了Microsoft Security Essentials。在注册表中有一个要卸载的条目Microsoft Antimalware,我假设它是Microsoft Security Essentials 的一部分,但它不在添加/删除程序列表中,我看不到任何类型的不显示值。 (我想使用某种 API 的部分原因)
【问题讨论】: