Показать сообщение отдельно
  #9  
Старый 24.01.2010, 16:25
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,096
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Цитата:
Сообщение от Argument
За код, конечно, спасибо, но не работает. list.add(root) не добавляет ничего в список.

А вот ненадо!!!
Все работает!!!

Еще раз код с примером:
Код:
procedure GetDirsList(root : String; var list : TStringList);
var
  i : Integer;
  F : TSearchRec;
begin
  list.add(root);
  i := FindFirst(IncludeTrailingPathDelimiter(root) + '*.*',faAnyFile,F);
  While i = 0 Do
    Begin
      If ((F.Attr And fadirectory) <> 0) And (F.Name <> '.') And (F.Name <> '..')
       Then GetDirsList(IncludeTrailingPathDelimiter(root) + F.Name,list);
      i := FindNext(F);
    End;
  FindClose(F);
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  S : TStringList;
begin
  S := TStringList.Create;
  GetDirsList('d:',S);
  memo1.Lines.Assign(S);
  S.Free;
end;
Ответить с цитированием