Форум: "Основная";
Текущий архив: 2005.08.28;
Скачать: [xml.tar.bz2];
Внизузнать, что это драйв по IShellFolder и Pidl Найти похожие ветки
← →
Андрей Молчанов (2005-08-06 10:37) [0]Здравствуйте, Мастера!
Начал я тут мучаться с ShellApi и вот возник вопрос - как при получении детишек специальной папки CsidlDrives (Мой Компьютер) отобразить только драйвы, а не "Общие документы", "Документы - <...>" и другие. Сначала хотел с помощь функции
function IsDrive(ShellFolder: IShellFolder; ID: PItemIDList): Boolean;
var
Flags: UINT;
begin
Flags := SFGAO_DRIVE;
ShellFolder.GetAttributesOf(1, ID, Flags);
Result := SFGAO_DRIVE and Flags <> 0;
end;
но... аттрибута SFGAO_DRIVE в природе не оказалось :(
Пожалуйста, подскажите, что делать.
← →
DiamondShark © (2005-08-06 11:33) [1]Проверить SFGAO_FILESYSTEM.
Если объект файловой системы, то получить путь и разбираться уже по пути.
Где-то, примерно, так.
← →
Андрей Молчанов (2005-08-06 11:42) [2]Ага, понял, спасибо!
Еще один вопрос: в пространстве имен некоторые объекты файловой системы дублируются несколько раз, пример - файл можно найти, как по ветке Мои Документы, так и по Мой Компьютер. Можно ли как-нибудь узнать это, кроме полного перебора?
Например, в Архивации данных от Windows (Пуск-Стандартные-Служебные), если выделить Мои Документы, то они выделятся и на C:\.
Как можно такое сделать? Или только перебором? А если перебором, то сколько это займет времени?
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.08.28;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.037 c