[Delphi3] Aus schreibgeschützten Dateien lesen

Hallo !!

Wie kann ich aus schreibgeschützen Dateien mit „Reset/Blockread“ lesen OHNE das ReadOnly-attribut du löschen ?
Danke in Voraus !

CU, Volker

Wird es denn gelöscht ?
In der Hilfe steht nix davon. Solange du nur liest gibt’s auch keinen Zugriffsfehler.
Du könntest ja auch nach dem Lesen das Attribut wieder setzen…

Wenn ich die Datei mit „Reset“ öffnen will, gibt es eine Fehlermeldung. Was soll ich nur machen ?

hmh…ich denke du solltest diesen Kram aus der TP-Zeit vergessen und die mehr Windows-like Methoden von TFileStream verwenden.
Da hast du auch mehr Kontrolle über Vorgänge wie das Öffnen von Dateien. Eine Datei ReadOnly zu öffnen wäre dann kein Prob mehr.

Wenn ich die Datei mit „Reset“ öffnen
will, gibt es eine Fehlermeldung. Was
soll ich nur machen ?

Ich habe dir mal den Text aus der Delphi Hilfe hier reinkopiert. Das hilft bestoimmt weiter.
Gruss
Dieter

Es folgt jetzt der Hilfetext ( zu finden in der Objekt-Pascal Referenz unter -Standardroutinen und E/A- ) :

In der Voreinstellung werden sämtliche Aufrufe von Standard-E/A-Routinen auf Fehler überprüft. Beim Auftreten eines Fehlers wird eine Exception ausgelöst (wenn keine Exception-Behandlung aktiviert ist, wird das Programm abgebrochen). Die automatische Überprüfung kann mit Hilfe der Compiler-Direktiven {$I+} und {$I–} ein- und ausgeschaltet werden. Wenn die E/A-Prüfung ausgeschaltet ist (d.h. wenn eine Routine im Status {$I–} compiliert wird), löst ein E/A-Fehler keine Exception aus. In diesem Fall muß zur Überprüfung des Ergebnisses einer E/A-Operation die Standardfunktion IOResult aufgerufen werden.

IOResult sollte auch dann aufgerufen werden, wenn der aufgetretene Fehler für das Programm nicht weiter von Bedeutung ist. Wenn Sie den Aufruf unterlassen, schlägt der nächste Aufruf einer E/A-Funktion im Status {$I+} fehl.