AVZ 5. Руководство пользователя
×

16.35.28. function SearchFolders

function SearchFolders(APath, AMask : string; ADirList : TStrings;
                       AFullPath, AAppendFolders : boolean) : integer;
 
Осуществляет поиск каталогов по маске AMask в каталоге APath.
Найденные каталоги помещаются в список ADirList.
Параметр AFullPath задает режим добавления найденных каталогов. Если AFullPath равен true, то в список добавляются полные имена найденных каталогов, включая полный путь. Если он равен False, то добавляются только имена найденных каталогов, без пути.
Параметр AAppendFolders управляет режимом формирования списка. Если он равен true, то найденные каталоги добавляются к списку (с практической точки зрения данный режим актуален при AFullPath=false), если он равен false, то список очищается перед началом поиска.
Функция возвращает количество каталогов, найденных в соответствии с заданными параметрами и 0 в случае ошибки.
 
В пути (параметр APath) допустимо указывать макросы, подробнее см. в разделе "макросы, допустимые в именах файлов"
 
Данная функция удобна для решения простых задач поиска каталогов, для решения более сложных задач следует применять класс TFileSearch. У функции есть аналог SearchFiles, предназначенный для быстрого поиска файлов в указанной папке
 
 
Совместимость: AVZ 4.32 и выше
 
Пример:
 
var
  Lines : TStrings;
  i : integer;
begin
  Lines := TStringList.Create;
  SearchFolders('%WinDir%', 'system*', Lines, true, false);
  for i:= 0 to Lines.Count-1 do
    AddToLog(Lines[i]);
  Lines.Free;
end.
 
В примере использовались: AddToLog
 
Данный пример осуществляет поиск файлов *.exe в папке Windows, найденные файлы заносятся в список с полными путями и затем в цикле выводятся в протокол. Для практической демонстрации