Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Readonly-Attribut und Windows XP

  Alt 3. Jan 2009, 10:46
Moin Daniel,

erst einmal herzlich willkommen hier in der Delphi-PRAXiS.

Das die genannte Funktion bei einer nicht existierenden Datei immer ausgibt, dass sie ReadOnly ist ist nachvollziehbar.
Die Funktion FileGetAttr ist nur ein Wrapper um die API-Funktion GetFileAttributes.
Diese Funktion gibt im Fehlerfalle -1 zurück, es sind also alle Bits gesetzt, so dass jede Prüfung auf ein Attribut dieses als gesetzt erkennt.
Man muss erst einmal prüfen, ob der Funktionsaufruf überhaupt erfolgreich war (Rückgabewert <> -1) bevor man versucht daraus Attribute abzuleiten. Existiert die Datei nicht, müsste ein anschliessender Aufruf von GetLastError den Wert 2 zurückgeben (ERROR_FILE_NOT_FOUND).

Das andere Problem kann ich im Moment nicht nachvollziehen.
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