Das packed muß hier definitiv raus. Wegen orderId und swRevisionPrefix.
Du kannst es auch so deklarieren (hier ist dann packed oder nicht egal):
Delphi-Quellcode:
TAnnotation =
packed record
deviceType : array[0..MAX_DEVICE_TYPE_LENGTH] of UINT8;
orderId : array[0..MAX_ORDER_ID_LENGTH] of UINT8;
padding1 : UINT8;
hwRevision : UINT16;
swRevisionPrefix : UINT8;
padding2 : UINT8;
swRevision1 : UINT16;
swRevision2 : UINT16;
swRevision3 : UINT16;
end;