Einzelnen Beitrag anzeigen

MStoll

Registriert seit: 15. Nov 2005
131 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: E/A-Fehler 103 bei Speichern mittels FileStream

  Alt 12. Jun 2006, 14:02
Gab's da nicht mal so etwas ähnliches bei synchronisierten Threads. Schreiben muss exklusiv sein, Lesen hingegen dürfen mehrere ohne Probleme?

[Edit]
Zitat:
fmShareExclusive Andere Anwendungen können die Datei nicht öffnen
fmShareDenyWrite Andere Anwendungen können die Datei ausschließlich zum Lesen öffnen.
Auszug aus der Delphi-Hilfe. D.h. doch, wenn ich zum Schreiben öffnen will und ein anderer Prozess liest gerade, dann müsste doch das Öffnen verweigert werden, oder?
Genauso, wenn ich zum Lesen öffnen will und ein anderer Prozess schreibt gerade. Davon bin ich jedenfalls ausgegangen. Das Problem ist ja, dass die Prozedur, wenn das Öffnen fehlgeschlagen ist, wohl zu schreiben versucht statt das Öffnen neu zu versuchen. Warum weiß ich leider nicht.

@Luckie: Na dann lass ich das {$I-} und {$I+} mal wieder weg. War eh nur ein FastHack, weil mir sonst nix mehr eingefallen ist. Danke für den Hinweis.

Meint ihr, es würde was bringen, wenn ich beim Lesen auch fmShareExclusive benutze? Wenn nein, was ist dann genau der Unterschied zwischen FileStream mit fmShareExclusive und dem TExclusiveFileStream?
[/Edit]
  Mit Zitat antworten Zitat