So vielleicht?
Delphi-Quellcode:
var
f:TTextFile
begin
AssignFile(...);
if f<>nil then
begin
try
//machwas
finally
CloseFile(...);
end;
end;
end;
Das ist doch wohl ziemlich unsinnig. Selbst wenn man außer acht läßt, daß es kein TTextfile gibt, ein Textfile kein Pointer ist etc: Wenn Du das AssignFile(...) aufrufst, dürfte die alte Verbindung ins Nirwana eingehen.
AssignFile(f) setzt TTextrec(f).Mode auf fmClosed, allerdings auch CloseFile. Reset/Rewrite etc setzen andere Werte der
File mode constants. D.h. wenn TTextrec(f).Mode=fmClosed ist, kann man ziemlich sicher sein, daß f gerade nicht benutzt wird.
Zitat von
Delphi-Hilfe:
File mode constants are used to open and close disk files.
Unit
System
Category
file management routines
const fmClosed = $D7B0; // closed file
const fmInput = $D7B1; // reset file (TTextRec)
const fmOutput = $D7B2; // rewritten file (TTextRec)
const fmInOut = $D7B3; // reset or rewritten file (TFileRec)
const fmCRLF = $8 // DOS-style EoL and EoF markers (TTextRec)
const fmMask = $D7B3; // mask out fmCRLF flag (TTextRec)
Description
Use the file mode constants when opening and closing disk files. The Mode field of TFileRec and TTextRec will contain one of these values.