Hallo,
hier ist ein eher defensiver Ansatz, der zunächst den Offset des ersten zu lesenden Recordelements berechnet. Aus diesem Wert und der Recordgröße ergibt sich die Anzahl der zu lesenden Bytes:
Delphi-Quellcode:
var
Test : TTest;
FieldOffset : Integer;
ReadSize : Integer;
begin
FieldOffset := Cardinal(@Test.ja) - Cardinal(@Test);
ReadSize := SizeOf(TTest) - FieldOffset;
Stream.Read(Test.ja, ReadSize);
end;
Gruß Hawkeye