whats new ¦  programming tips ¦  indy articles ¦  intraweb articles ¦  informations ¦  links ¦  interviews
 misc ¦  tutorials ¦  Add&Win Game

Tips (1541)

Database (90)
Files (137)
Forms (107)
Graphic (114)
IDE (21)
Indy (5)
Internet / LAN (130)
IntraWeb (0)
Math (76)
Misc (126)
Multimedia (45)
Objects/
ActiveX (51)

OpenTools API (3)
Printing (35)
Strings (83)
System (266)
VCL (242)

Top15

Tips sort by
component


Search Tip

Add new Tip

Add&Win Game

Advertising

26 Visitors Online


 
...list all Subdirectories of a Directory?
Autor: Martin Schulz
[ Print tip ]  

Tip Rating (44):  
     


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;

 

Rate this tip:

poor
very good


Copyright © by SwissDelphiCenter.ch
All trademarks are the sole property of their respective owners