Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#9
  Alt 7. Feb 2003, 20:54
Moin Chris,

da FindFirst einen Windows Fehlercode zurückgibt, oder 0 bei Erfolg, und FindFirstFile ein SearchHandle (INVALID_HANDLE_VALUE bei Misserfolg), ist es ja nur logsich, dass die Werte nicht Stimmen.
Die würden im Fehlerfalle stimmen, wenn Du sie dann mit GetLastError ermittelst.

Du musst also unmittelbar nach FindFirstFile das Handle prüfen. Ist es ungültig hat's nicht geklappt und FileClose ist dann auch nicht notwendig. Dafür kannst Du dann mit GetLastError prüfen, was denn nun genau schiefgegangen ist.
Wenn Dich das nicht weiter interessiert, kannst Du die gesamte folgende Prüfung auch weglassen (ausser eben Prüfung des Handles).

PS: Das {$I-}/{$I+} kannst Du auch streichen: die APIs lösen keine Pascal I/O-Exceptions aus.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat