Помощь - Поиск - Пользователи - Календарь
Полная версия: Обход дерева каталогов на Borland Pascal For Win
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Renat
Пожалуйста, помогите решить данную задачу-реализовать циклический обход дерева каталогов на BORLAND PASCAL _FOR WINDOWS_
BlackShadow
Тоже где-то вроде...

Код

Uses WinDos;

Type
 TCallBack=Function(FileName:String):Boolean;

Function Browse(Root:String;Mask:String;CallBack:TCallBack):Boolean;
Var
 q:TSearchRec;
Begin
 Browse:=False;
 If Root[Length(Root)] <> '\' Then
   Root:=Root + '\';
 If FindFirst(Root+Mask,faAnyFile,q) <> 0 Then
   Exit;
 Repeat
   If q.Attrib And faDirectory <> 0 Then
   Begin
     If Not Browse(Root+q.Name,Mask,CallBack) Then
       Exit
   End
   Else
     If Not CallBack(Root+q.Name) Then
       Exit
 Until FindNext(q)<>0;
 Browse:=True
End;

{Example}

Function PrintList(FileName:String):Boolean;
Begin
 WriterLn(FileName);
 PrintList:=True
End;

Begin
 Browse("C:\windows\System32","*.Dll",PrintList)
End.


Возможны мелкие ошибки (т. к. без компилятора пишу), но алгоритм, я думаю, понятен, так что исправить их не составит труда.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.