Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.188 Beiträge
 
Delphi 12 Athens
 
#11

Re: Dateien erstellen, schreiben, Lesen (E/A-Fehler 32 &

  Alt 7. Mai 2008, 21:26
AssignFile speichert in dem Record (TextFile) nur den Dateinamen

Reset, Reweite und Append öffnen die Datei (über dem gespeicherten Namen) und speichen einen "Zeiger" auf die Datei ebenfalls in diesem TextFile-Record.

CloseFile schließt die Datei über den gespeicherten "Zeiger"


tja, nun hatest du erstmal den TextFileRecord überschrieben (heißt den Programm hat die geöffntete Datei aus FormCreate vergessen, aber Windows nicht und demnach ist die Datei immernoch geöffnet)

Rewrite und Reset vergeben keine Sharingrechte, also kann die datei nur einmal, zur selben Zeit, geöffnet sein ... drum schlägt dann der Aufruf von Rewrite mit Fehler 32 fehl.

CloseFile schließt die zulett geöffnete Datei ... da aber textf immernoch die Daten der letzten Datei hat, schlägt nun ein weiterer Aufruf vo CloseFile mit Fehler 103 fehl.


Lösung bezüglich des Überschreibens:
jeder Aufruf bekommt seine eigene TextFile-Variable (textf)

fehlende Rechte: Datei nur einmal zugleich öffnen, also rechtzeitig in FormCreate schließen
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat