Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Probleme mit FindAllFiles aus der Codelib (https://www.delphipraxis.net/37413-probleme-mit-findallfiles-aus-der-codelib.html)

endeffects 5. Jan 2005 16:39


Probleme mit FindAllFiles aus der Codelib
 
Hallo Leute,

irgendwie hab ich schon wieder mächtig ein Brett vor dem Kopf,
ich hab ein wenig im Forum gestöbert um eine Methode zum Auflisten
von Dateien zu finden und bin auch fündig geworden:

Delphi-Quellcode:
procedure TMainForm.FindAllFiles(var FileList: TStrings; RootFolder: string; Mask: string = '*.*'; Recurse: Boolean = True);
var
  SR: TSearchRec;
begin
  IncludeTrailingPathDelimiter(RootFolder);
  if Recurse then
    if FindFirst(RootFolder + '*.*', faAnyFile, SR) = 0 then
    try
      repeat
        if SR.Attr and faDirectory = faDirectory then
          if (SR.Name <> '.') and (SR.Name <> '..') then
            FindAllFiles(FileList, RootFolder + SR.Name, Mask, Recurse);
      until FindNext(SR) <> 0;
    finally
      FindClose(SR);
    end;
  if FindFirst(RootFolder + Mask, faAnyFile, SR) = 0 then
  try
    repeat
      if SR.Attr and faDirectory <> faDirectory then
      begin
        FileList.Add(RootFolder + SR.Name);
      end;
    until FindNext(SR) <> 0;
  finally
    FindClose(SR);
  end;
end;
so und nun hab ich mir gedacht probier ich das einfach mal aus:

Delphi-Quellcode:
procedure TMainForm.btnStartClick(Sender: TObject);
var FileList: TStrings;
begin
  FileList:= TStrings.Create;
  FindAllFiles(FileList, 'C:\cache\', '*.*', True);
  FileList.Free;
end;
Aber leider endet das Ganze in einem "abstrakten Fehler",
was immer das auch sein soll. Hat Jemand vielleicht
eine Idee wo nun wiedermal mein Denkfehler ist?

endeffects 5. Jan 2005 16:45

Re: Probleme mit FindAllFiles aus der Codelib
 
hat sich schon erledigt, ich bin wiedermal so clever :wall:

Delphi-Quellcode:
var FileList: TStrings;
begin
FileList:= TStringList.Create;
FindAllFiles(FileList, 'C:\cache\', '*.*', True);
FileList.SaveToFile('c:\test.txt');

Christian Seehase 5. Jan 2005 17:34

Re: Probleme mit FindAllFiles aus der Codelib
 
Moin endeffects,

fehlt nur noch try/finally ;-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:32 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz