Может есть какой-либо примерчик?

Пользовался уже поиском но толку он не дал, мне нужен маленький пример на Дельфи, а все здешние примеры используют модуль Dos, которого нет в Дельфи...
Может подскажите чего??
Procedure ScanDisk(StartDir: String; Mask:string; List:TStrings);
Var SearchRec: TSearchRec;
Begin
If Mask ='' Then Mask:= '*.*';
If StartDir[Length(StartDir)] <> '\' then StartDir := StartDir + '\';
If FindFirst(StartDir+Mask, faAnyFile, SearchRec) = 0 then Begin
Repeat
Application.ProcessMessages;
If (SearchRec.Attr and faDirectory) <> faDirectory then
List.Add(StartDir + SearchRec.Name)
Else
If (SearchRec.Name <> '..') and (SearchRec.Name <> '.') Then Begin
List.Add(StartDir + SearchRec.Name + '\');
ScanDisk(StartDir + SearchRec.Name + '\',Mask,List); { и рекурсия }
End;
Until FindNext(SearchRec) <> 0;
FindClose(SearchRec);
End;
end;