Как заставить элементы отображаться в левой панели навигации проводника Windows

Мне нужно получить все элементы в левой панели навигации проводника Windows. Так же, как будет отображаться новое окно проводника, т.е. с учетом пользовательских настроек.

я не получаю никакого API или реестра, где я могу получить эти настройки.

Я могу получить подробную информацию об этих папках (Избранное, Библиотеки, Сеть и т. д.) в целом, используя COM-интерфейсы IKnownFolderManager и IKnownFolder. Но моя проблема в том, что я хочу получить только те элементы, которые пользователь включил/настроил для отображения в проводнике. где сохраняются эти настройки проводника?

пожалуйста, предложите любой Win32/COM API или любой другой программируемый способ сделать это. заранее спасибо.


person Rakesh    schedule 23.02.2014    source источник
comment
Начните с рабочего стола, используя SHGetDesktopFolder, перечислите его, используя IShellFolder::EnumObjects, рекурсивно войдите в подпапки с помощью BindToObject.   -  person Jonathan Potter    schedule 23.02.2014
comment
@JonathanPotter, разве это не получает только содержимое папок в файловой системе, а не те, что на левой панели, где написано «Библиотеки», «Документы», «Изображения», и вы можете развернуть любой из них?   -  person Oliver    schedule 24.02.2014
comment
Нет, эти вызовы предназначены для перечисления пространство имен оболочки.   -  person Jonathan Potter    schedule 24.02.2014


Ответы (1)