Windows 7 Библиотеки - PullRequest
       14

Windows 7 Библиотеки

1 голос
/ 01 сентября 2009

Я надеюсь, что кто-то может помочь мне с этим, поскольку я не могу найти правильный способ сделать это. В настоящее время я занимаюсь разработкой приложения, которое должно в какой-то мере иметь возможность перечислять все библиотеки Windows и отображать их содержимое. На данный момент я смог получить включенные папки для всех стандартных библиотек Windows 7, документов, изображений, видео и музыки. Проблема в том, что я не знаю, как получить информацию о пользовательских пользовательских библиотеках, так как IShellLibrary :: SHLoadLibraryFromKnownFolder требует определенного GUID папки, который в действительности не определен в KnownFolders.h.

Мне нужно только перечислить имена всех библиотек и извлечь их соответствующие GUID, если это возможно.

1 Ответ

1 голос
/ 03 сентября 2009

Похоже, что вы технически можете создать файл определения библиотеки и поместить его в любом месте системы. Если не считать поиска всех таких файлов определений, возможно, вы захотите ограничить себя перечислением всех элементов оболочки в известной папке оболочки FOLDERID_Libraries? Идентификатор этой папки должен быть KnownFolders.h в последней версии Windows SDK.

Для каждого элемента оболочки, с которым вы сталкиваетесь в этой папке, вы должны вызывать SHLoadLibraryFromItem, чтобы «загрузить» библиотеку, если вам нужен доступ к IShellLibrary объекту для нее.

...