我希望有人能帮助我,因为我无法找到正确的方法来做这件事。
我目前正在开发一个应用程序,该应用程序在某种程度上应该能够枚举所有Windows库并显示它们的内容。
目前,我能够获得所有标准Windows 7库(文档、图片、视频和音乐等)的包含文件夹。
问题是我不知道如何获得自定义库的信息,因为IShellLibrary::SHLoadLibraryFromKnownFolder()
需要特定的文件夹GUID
,而KnownFolders.h
中并没有真正定义该文件夹。
如果可能的话,我只需要列出所有库的名称并获取它们各自的GUID
。
1条答案
按热度按时间wnavrhmk1#
从技术上看,您似乎可以创建库定义文件并将其放置在系统上的任何位置。除了搜索 * 所有 * 此类定义文件之外,也许您可以考虑将自己限制为枚举众所周知的shell文件夹
FOLDERID_Libraries
下的所有shell项?在最新版本的Windows SDK中,此文件夹的ID应为KnownFolders.h
。对于在此文件夹下遇到的每个shell项,如果需要访问它的
IShellLibrary
对象,则应该能够调用SHLoadLibraryFromItem
来“加载”库。