Ich würde das nicht tun!
Denn packed records packen manchmal eben nicht so, wie man sich das denkt. Irgendwann (Arrays mit ungerader Länge) wird doch auf das nächst gerade Byte ausgerichtet und -wupps- hat man den Salat.
a) Kannst Du das belegen?
b) falls ich Fremddaten lesen muß sieht das ungefähr so aus
Delphi-Quellcode:
myrecord=packed record.....end;
setlength(buffer,sizeof(myrecord));
gelesen:=fs.read(buffer,sizeof(buffer));
Gruß
K-H