Mega Code Archive

 
Categories / Delphi / Files
 

How to list all Subdirectories of a Directory

Title: How to list all Subdirectories of a Directory procedure GetSubDirs(const sRootDir: string; slt: TStrings); var srSearch: TSearchRec; sSearchPath: string; sltSub: TStrings; i: Integer; begin sltSub := TStringList.Create; slt.BeginUpdate; try sSearchPath := AddDirSeparator(sRootDir); if FindFirst(sSearchPath + '*', faDirectory, srSearch) = 0 then repeat if ((srSearch.Attr and faDirectory) = faDirectory) and (srSearch.Name '.') and (srSearch.Name '..') then begin slt.Add(sSearchPath + srSearch.Name); sltSub.Add(sSearchPath + srSearch.Name); end; until (FindNext(srSearch) 0); FindClose(srSearch); for i := 0 to sltSub.Count - 1 do GetSubDirs(sltSub.Strings[i], slt); finally slt.EndUpdate; FreeAndNil(sltSub); end; end;