Zunächst mal verwende überall die Methode
ReadBuffer()
anstatt
Read()
:
Delphi-Quellcode:
Strom:=TFileStream.Create(Dateiname, fmOpenRead);
Strom.ReadBuffer(FileHeader, SizeOf(FileHeader));
Falls über das Ende des Streams hinausgelesen wird, wird eine
Exception ausgelöst, was ein wichtiger Hinweis ist.
Würde man über das Ende hinauslesen, es aber nicht bemerken, können natürlich alle möglichen Fehler entstehen.