16.35.27. function SearchFilesEx
function SearchFilesEx(APath, AMasks : string; AFileList : TStrings; ARecurse : boolean) : integer;
Осуществляет поиск файлов в каталоге по заданному набору масок, полные имена найденных файлы помещаются в список AFileList.
Параметры:
-
APath - путь к папке, в которой производится поиск. В пути допустимо указывать макросы, подробнее см. в разделе "макросы, допустимые в именах файлов"
-
AMasks - одна или несколько масок файлов. При указании нескольких масок разделителем является запятая, например "*.exe,*.dll,*.ocx"
-
ARecurse - управление рекурсивным поиском. Если задано значение False, то поиск ведется только в указанном каталоге. Если задано значение True, то запускается рекурсивный поиск по всем подкаталогам заданной папки.
Функция возвращает количество файлов, найденных в соответствии с заданными параметрами и 0 в случае ошибки или отсутствия файлов, соответствующих заданным маскам.
Совместимость: AVZ 5.70 и выше
Пример:
var
Lines : TStrings;
i : integer;
begin
Lines := TStringList.Create;
SearchFilesEx('%WinDir%', '*.exe,*.dll', Lines, true);
for i:= 0 to Lines.Count-1 do
AddToLog(Lines[i]+', MD5='+
CalkFileMD5(Lines[i])+
', Size='+inttostr(GetFileSize(Lines[i])));
Lines.Free;
end.
Данный пример произведет поиск всех файлов с расширениями *.exe и *.dll в каталоге %WinDir% (данный макрос указывает на папку Windows), поиск будет производиться также во всех подкаталогах указанной папки, для всех найденных файлов в протокол будут выведены их хеш MD5 и размер.