Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > Вопрос по работе с Shell


Автор: Тутанхамец 21.3.2006, 21:28
Хочу в TreeView построить иерархию папок. Как в Проводнике. Могу рекурсивно найти все папки и забить их в TreeView, начиная, скажем, с C:\. Могу создать в TreeView список для всех дисков и специальных папок. Для этого пользую FSO, а для поиска специальных папок (типа Десктопа и МоихДокументов) еще и wshshell.SpecialFolders("Desktop").

Но!

Мне нужно, чтобы список в моем TreeView был точно такой же (ни больше, ни меньше) как и при открытии окна Мой компьютер.


user posted image

Для этого как-то вроде можно заюзать объект Shell. Вот так Set f = sh.NameSpace(ssfDRIVES) вроде бы получаю то, что нужно. Но я получаю объект типа Folder, а у него нет нужных мне свойств Path, Name и Size. Они есть у объекта FolderItem.

Так вот внимание вопрос!

Имея объект Folder, как получить соответствующий ему объект FolderItem?

И вообще, что собой представляет Folder и чем он отличается от FolderItem?

Заранее благодарен.

Автор: Тутанхамец 21.3.2006, 21:51
А вообще вопрос можно задать гораздо проще:

Как мне встроить в свою прогу Проводник?

Чтоб юзер мог полазить по всем местам, которые этот Проводник предлагает.

Автор: Velin 22.3.2006, 20:29
Использовать WebBrowser Control. И Navigate его на нужную папку (скажем "C:\")

Автор: Тутанхамец 23.3.2006, 07:21
Попробовал. Больно уж он медленно работает, но зато просто. Спасибо. smile Кажется, это лучший вариант. А побочных последствий не будет? Что-нибудь с безопасностью? Вроде не рекомендуют почему-то браузером диски просматривать?

Автор: Velin 24.3.2006, 23:37
Кто не рекомендуют? Стандартный Explorer им просматривает, почему другим нельзя?

Автор: Тутанхамец 25.3.2006, 07:58
Ок. Удобно. smile

А как сделать так, чтобы сразу при запуске формы с Эксплорером, он показывал содержимое папки не в виде крупных иконок, а в виде списка?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)