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