![]() |
Finde den fehler nicht
bin ich zu blöd oder was ,aber ich finde den nicht... :wall:
Delphi-Quellcode:
[Fehler] Unit1.pas(41): Anweisung erforderlich, aber Ausdruck vom Typ 'Integer' gefunden
procedure GetFileList(const Path: String; const Extensions: String; FileList: TStrings);
var SR: TSearchRec; begin if FindFirst(Path + '*.*', faAnyFile, SR) = 0 then try repeat if (SR.Attr and faDirectory) > 0 then begin if SR.Name[1] <> '.' then GetFileList(Path + SR.Name + '\', Extensions, FileList); end else if Pos(UpperCase(ExtractFileExt(SR.Name)), Extensions) > 0 then FileList.Add(Path + SR.Name); until FindNext(SR) <> 0; finally FindClose(SR); end; end; |
Delphi-Quellcode:
Da fehlt for dem > eine )...
if Pos(UpperCase(ExtractFileExt(SR.Name)), Extensions) > 0 then
Chris |
nein auch nicht jeden fals bei mir nicht ,hab es jetzt so gemacht ,und es geht jetzt
Delphi-Quellcode:
if Pos(UpperCase(ExtractFileExt(SR.Name)), Extensions) > 0 then
FileList.Append(Path + SR.Name); |
Moin Tino,
diese Abfrage ist falsch.
Delphi-Quellcode:
Du musst explicit auf <> '.' und <> '..' prüfen, denn es ist durchaus zulässig, dass Verzeichnis- / Dateinamen mit einem Punkt beginnen.
if SR.Name[1] <> '.' then ...
Eventuell solltest Du statt UpperCase lieber AnsiUpperCase verwenden, damit auch Umlaute korrekt umgewandelt werden. |
Danke für den Tipp :)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz