OK, das Problem bei TFlushFunc(TFileRec(F).FlushFunc)(F); hab ich beseitigt.
Füge bitte noch die folgende Prüfung mit ein:
Code:
[color=red]If TFileRec(F).FlushFunc <> nil Then[/color] TFlushFunc(TFileRec(F).FlushFunc)(F);
Bei Textdateien ist es so, das selbst wenn keine Flush-Funktionalität vorhanden ist, daß dann wenigstens eine Dummy-Funktion (FileNOPProc) angegeben ist, wobei bei den typisierten Dateien nichts angegeben ist, weßhalb dieses durch die Initialisierung auf 0 steht.
Da meine Seek64 inoffiziell sogar für Textdateien verwendet werden kann, welches bei Seek eigentlich nicht möglich ist, mußte halt der Puffer darin mit behandelt werden, im Gegensatz zum Original.
Ein Therapeut entspricht 1024 Gigapeut.