枚举在C ++中安装在Windows上的应用程序

时间:2012-09-03 07:16:17

标签: c++ mfc using

我想在c中列出所有已安装的应用程序。我们可以用两种方式来做。 1.使用Uninstall注册表和2. WMI和Win32_product类。

但使用注册表来枚举已安装的产品是否可靠?此外,WMI仅列出通过MSI安装程序安装的产品?还有另一种方法吗?如果没有哪种是最佳和推荐的方式?

1 个答案:

答案 0 :(得分:1)

你的直觉是正确的,迭代注册表是找出“安装”哪些程序的最完整方式。显然,这将找不到独立的二进制文件/应用程序,它们不会在Windows注册表中注册。

请参阅WMI "installed" query different from add/remove programs list?

Rob Haupt's Answer指向some code的链接,用于检查注册表