Einzelnen Beitrag anzeigen

0xDEAD

Registriert seit: 9. Okt 2008
33 Beiträge
 
#1

Blockread mit Struktur hängt bei double

  Alt 21. Apr 2009, 12:08
Hallo,

ich hab hier grad ein komisches Problem das ich nicht verstehe.

Habe ein altes Programm "geerbt" und versuche das zu verstehen.

Ich habe ein Record die ich über ein blockread aus einer Datei lade.

Delphi-Quellcode:

 DtaHedT = record
   IdentStr: FileVersionT;
   ProjDirN: string[255];
   ProgNum: longint;
   DateTime: double;
   StopNum: longint;
   DataSrcN: string[255];
// hier folgt noch einiges
end;
  {$I-}blockread(f,DtaHed,SizeOf(DtaHedT),BytesRead);{$I+} Ich hab einiges weggelassen, aber das sollte zum verstehen reichen.
Soweit alles klar?
Die Datei wird ausgelesen und die Struktur gefüllt. Jedoch ab DateTime ist irgendwie der Wurm drinnen.
Die Daten scheinen verschoben.

Wenn ich den double in ein array[1..8] of byte ändere klappt alles und der Record sitzt wie ne Eins.

Was ist da los? Wo ist der Fehler?
Mit dem alten Code sollte es doch funktionieren.
<°)))o>< DON'T FEED THE TROLLS ><+++°>
  Mit Zitat antworten Zitat