c++ - 如何获取桌面上图标的名称

标签 c++ windows winapi

伙计们。 我想在 c++ 中获取桌面上的图标名称。而且我知道如何得到他们的句柄:

HWND hwnd = FindWindow("Progman","Program Manager");
  HWND  hwndSHELLDLL_DefView = ::FindWindowEx( hwnd, NULL, "SHELLDLL_DefView", NULL ); 
  HWND  hwndSysListView32 = ::FindWindowEx( hwndSHELLDLL_DefView, NULL, "SysListView32", "FolderView" );

下一步是什么?

最佳答案

首先,您需要使用 SHGetFolderLocation 获取桌面文件夹的位置.. 接下来,您使用 IShellFolder::EnumObjects 枚举此文件夹的内容

从这里开始,天空是极限。关于与 windows shell 交互的大量信息 here .

玩得开心!

更新:

快速 google search出现了这个示例,它似乎完全符合您的要求。

关于c++ - 如何获取桌面上图标的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4892491/

相关文章:

winapi - 流畅播放实时网络音频样本

C++ - 无法查看使用 WinObj 创建的互斥体

c++ - 从套接字读取

c++ - "Iterator not incrementable"从 std::vector 删除项目时

javascript - 错误!错误 : EPERM: operation not permitted, 取消链接

c# - 如何在 C# 中使用低级键盘钩子(Hook)来抑制任务切换键(winkey、alt-tab、alt-esc、ctrl-esc)

c++ - 如何在 Visual Studio 2015 for C 中禁用警告?

C++14类函数错误: "Object has no attribute ' value'"

windows - 使用 rsync 从 Windows 传输到 Linux

ios - 我可以使用 Flex 4.5 在 Windows 上的 iOS 上打包应用程序吗?