我希望有人能帮我解决这个问题,因为我找不到正确的方法。我目前正在开发一个应用程序,在它的一部分,应该能够枚举所有的Windows库,并显示它们的内容。目前,我能够获得所有标准windows7库、文档、图片、视频和音乐的包含文件夹。问题是,我不知道如何获取自定义用户库的信息,因为IShellLibrary::SHLoadLibraryFromKnownFolder需要特定的文件夹GUID,而这在KnownFolders.h中并没有真正定义。
我只需要列出所有库的名称,并在可能的情况下获取它们各自的GUID。
发布于 2009-09-03 07:58:58
从技术上讲,您似乎可以创建库定义文件并将其放在系统上的任何位置。如果不搜索所有这样的定义文件,也许您可以考虑将自己限制为枚举众所周知的shell文件夹FOLDERID_Libraries下的所有shell项?在最新版本的Windows SDK中,此文件夹的ID应位于KnownFolders.h中。
对于在该文件夹下遇到的每个shell项目,如果需要访问IShellLibrary对象,您应该能够调用SHLoadLibraryFromItem来“加载”该库。
https://stackoverflow.com/questions/1361087
复制相似问题