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



我想列出c中所有已安装的应用程序。我们可以使用两种方法。1.使用卸载注册表和2。WMI和Win32_product类别。

但使用注册表枚举已安装的产品是否可靠?WMI也只列出通过MSI安装程序安装的产品?有别的办法吗?如果没有,哪种方式是最好的和推荐的?

您的直觉是正确的,迭代注册表是找出"安装"了哪些程序的最完整方法。显然,这不会找到不在windows注册表中注册的独立二进制文件/应用程序。

参见WMI";已安装";查询不同于添加/删除程序列表?

Rob Haupt的Answer链接到一些用于检查注册表的代码

最新更新