Always use PACKED directive when define records that are going to be used with stream, blockread/blockwrite or any similar acces way.

type
TStructure = packed record
variable1 : byte;
variable2 : Single;
end;

the packed directive will asure that the record size will be the sum of all their fields, otherwise the compiler could add internal dumy bytes if neccesary to force the structure size get alway word aligned for fast accesing.


tp.