Hallo.
Wie kann ich (wie mit FindFirst, FindNext, usw.) alle Ordner in einem bestimmten Ordner auflisten?
Konkret:
Es existiert ein Ordner: <b>C:\Bla\</b>
In diesem sind die Ordner <b>Was\</b> und <b>Nochwas\</b>
Und die Dateien <b>SoWieSo.log</b> und <b>Config.bak</b>
Wenn ich mit FindFirst('C:\Bla\*', faDirectory, sr) und dementsprechend mit FindNext(sr) suche, findet es sowohl die Ordner als auch die Dateien.
Ich benutze D5, Folgender Code <u>geht nicht!</u>:
procedure TForm1.BitBtn1Click(Sender: TObject);
var sr: TSearchRec;
i: Integer;
List: TStringList;
const Home = 'C:\Bla\';
begin
List := TStringList.Create;
with List do
begin
i := 0;
if FindFirst(Home+'*', faAnyFile, sr) = 0 then
Add(sr.Name);
while i >= 0 do
begin
if FindNext(sr) = 0 then
Add(sr.Name)
else
i := - 1;
end;
FindClose(sr);
end;
Listbox1.Items := List;
with List do
begin
Clear;
i := 0;
if FindFirst(Home+'*', faDirectory, sr) = 0 then
Add(sr.Name);
while i >=+ 0 do
begin
if FindNext(sr) = 0 then
Add(sr.Name)
else
i := - 1;
end;
FindClose(sr);
end;
Listbox2.Items := List;
end;
Wie kann ich (wie mit FindFirst, FindNext, usw.) alle Ordner in einem bestimmten Ordner auflisten?
Konkret:
Es existiert ein Ordner: <b>C:\Bla\</b>
In diesem sind die Ordner <b>Was\</b> und <b>Nochwas\</b>
Und die Dateien <b>SoWieSo.log</b> und <b>Config.bak</b>
Wenn ich mit FindFirst('C:\Bla\*', faDirectory, sr) und dementsprechend mit FindNext(sr) suche, findet es sowohl die Ordner als auch die Dateien.
Ich benutze D5, Folgender Code <u>geht nicht!</u>:
procedure TForm1.BitBtn1Click(Sender: TObject);
var sr: TSearchRec;
i: Integer;
List: TStringList;
const Home = 'C:\Bla\';
begin
List := TStringList.Create;
with List do
begin
i := 0;
if FindFirst(Home+'*', faAnyFile, sr) = 0 then
Add(sr.Name);
while i >= 0 do
begin
if FindNext(sr) = 0 then
Add(sr.Name)
else
i := - 1;
end;
FindClose(sr);
end;
Listbox1.Items := List;
with List do
begin
Clear;
i := 0;
if FindFirst(Home+'*', faDirectory, sr) = 0 then
Add(sr.Name);
while i >=+ 0 do
begin
if FindNext(sr) = 0 then
Add(sr.Name)
else
i := - 1;
end;
FindClose(sr);
end;
Listbox2.Items := List;
end;
Comment