显示已安装的应用程序列表

时间:2015-06-30 17:12:05

标签: c++ file associations

当您在“我的电脑”中按下图片中的右键时,Windows会显示与该类型文件关联的已安装应用程序列表" OPEN with ..." 如何使用WinAPi获取相同的程序列表并使用C ++语言创建函数

2 个答案:

答案 0 :(得分:1)

MSDN表示"默认情况下,注册为HKEY_CLASSES_ROOT\Applications子项的任何应用程序都会显示在打开方式对话框中。"。

但是,列出了两个例外:NoOpenWith子项(空REG_SZ)从打开方式对话框中删除应用程序。带有扩展列表的SupportedTypes密钥将应用程序限制为仅匹配使用对话框打开。

请注意,HKCR是一个虚拟配置单元,通过合并HKCUHKLM的相关部分而形成。

答案 1 :(得分:0)

打开......'菜单位于注册表项HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts,您可以从那里create some functions检索数据。 MSDN有一系列注册表函数来获取/设置值以及遍历树。

由于这样做并不是一点点代码(需要进行大量的错误检查),并且我不会假设知道您的全部需求是什么,我将离开实施让你先尝试做(如果你对你的实施有疑问,那就回到SO)。

希望可以提供帮助。