Einzelnen Beitrag anzeigen

BAMatze

Registriert seit: 18. Aug 2008
Ort: Berlin
759 Beiträge
 
Turbo Delphi für Win32
 
#1

Datei finden führt zu abstraktem Fehler

  Alt 25. Mai 2009, 15:33
Hallo nochmal an alle,

Ich möchte eine Datei auf meiner Festplatte finden. Dazu verwende ich folgenden Quellcode aus der CodeLibrary (ich weiß ist nicht der Link zur Library sondern in einen Threat, wo schonmal Fehler dazu aufgetreten sind)

hier mein Quellcode:
Delphi-Quellcode:
procedure TDateiArbeit.FindAllFiles(var FileList: TStrings; RootFolder: string; Mask: string = '*.*'; Recurse: Boolean = True);
var SR: TSearchRec;
begin
  RootFolder := 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;
und der Aufruf im Constructor:
Delphi-Quellcode:
constructor TDateiArbeit.create(const sText: string);
begin
  inherited create;
  FsDateiname := sText;
  if IsFileName then //IsFileName ist eine Überprüfung der Gültigkeit des übergebenden Strings als Dateiname (auch hier aus der DP)
    begin
      FtsPfad := TStrings.Create;
      FindAllFiles(FtsPfad,'d:',FsDateiname, true);
    end;
end;
Die Fehlermeldung lautet einfach nur: "Abstrakter Fehler" in einer MessageBox bevor die Form erscheint. Weis jemand, was dort falsch ist?

Vielen Dank
BAMatze
2. Account Sero
  Mit Zitat antworten Zitat