Einzelnen Beitrag anzeigen

samso

Registriert seit: 29. Mär 2009
439 Beiträge
 
#15

AW: TFileStream Fehler

  Alt 12. Mai 2020, 06:23

Allerdings hast du beim fmCreate ein kleines Problem, denn dort kann man die Shared-Attribute nicht benutzen, weil das bereits $FFFF ist
Das ist schon seit vielen Jahren nicht mehr so (mindestens seit Delphi 2010):

Delphi-Quellcode:
unit Classes;
...
const
{ TFileStream create mode }

  fmCreate = $FF00;
Das ändert aber nichts daran, dass ein simples TFilestream.Create(Filename, fmCreate) die Datei immer mit exclusivem Zugriff erstellt.
Erst wenn man den Share-Mode explizit angibt wird dieser benutzt. Damit ist es möglich die Datei mit "fmCreate or fmShareDenyWrite" zu erstellen um so anderen Programmen die Möglichkeit zu geben die Datei bereits während des Schreibens zu lesen (z.B. bei Logdateien). Diese Möglichkeit gab es bei den sehr alten Delphiversionen (z.B. Delphi 2007) so nicht.

Geändert von samso (12. Mai 2020 um 14:46 Uhr) Grund: Ergänzung/Delphi 2010 ist das erste Delphi mit fmCreate=$FF00
  Mit Zitat antworten Zitat