Einzelnen Beitrag anzeigen

hedie

Registriert seit: 12. Dez 2005
Ort: Schweiz
1.024 Beiträge
 
Delphi XE6 Starter
 
#3

AW: Speicherinhalt eines Records identisch wie mit jenem in C?

  Alt 14. Okt 2012, 16:42
Besten Dank für deine Antwort...

Ich habe zum testen mal folgenden Code geschrieben:

Delphi-Quellcode:
.....
  TColixHeader = packed record
    DestinationAddr: Word;
    SourceAddr: Word;
    PaketType: Byte;
    PaketCounter:Byte;
    PaketStatusBits:Byte;
  end;
.....


procedure TForm1.Button8Click(Sender: TObject);
var
myArray: array of Byte;
myHeader:TColixHeader;
begin

SetLength(myArray,7);

myArray[0] := 0;
myArray[1] := 20;

myArray[2] := 0;
myArray[3] := 50;

myArray[4] := 20;

myArray[5] := 7;

myArray[6] := 5;

move(myArray,myHeader,7);

debugEntry('DestinationAddr: '+inttostr(myHeader.DestinationAddr));
debugEntry('SourceAddr: '+inttostr(myHeader.SourceAddr));

debugEntry('PaketType: '+inttostr(myHeader.PaketType));
debugEntry('PaketCounter: '+inttostr(myHeader.PaketCounter));
debugEntry('PaketState: '+inttostr(myHeader.PaketStatusBits));

end;
Doch leider scheint dies nicht zu klappen...

Dabei kommt immer folgendes heraus:

Code:
2:16:38:42 - DestinationAddr: 59376
3:16:38:42 - SourceAddr: 144
4:16:38:42 - PaketType: 240
5:16:38:42 - PaketCounter: 246
6:16:38:42 - PaketState: 24
Ich dachte zuerst, dass es daran liegt, das ich ein word mittels IntToStr versuche zu konvertieren.
Aber laut der DP ist das der normale weg...

Gibt es eine möglichkeit, in den Speicher an dem das Record liegt hineinzuschauen?

Danke schonmal
Claudio
Tu was du nicht lassen kannst
- http://endasmedia.ch
  Mit Zitat antworten Zitat