Hallo zusammen, ich bin Anfänger und arbeite seit 2 Wochen mit Delphi.
Ich muss die unten stehende Struktur von C nach Delphi übersetzen.
Ich hoffe mir kann jemand helfen, denn ich schaffe es nicht.
Ich habe die Komentare auf der rechten Seite drin gelassen.
Code:
typedef struct DPS_TASK_PARAMETERtag {
unsigned char bPlcMode; /* PLC mode */
unsigned short usWatchdogTime; /* Host watchdog time */
unsigned char abReserved1[3]; /* Do not modify */
unsigned short usIdentNumber; /* PROFIBUS Ident number (if set to */
/* zero, built-in Ident number will */
/* be used) */
unsigned char bBusAddr; /* Bus address */
unsigned char abReserved2[1]; /* Do not modify */
unsigned char bFlags; /* Configuration flags */
/* Bit 0: Chk_Cfg telegram data will */
/* be accepted as valid config. */
/* Bit 1: Ignore hardware address */
/* switch, use bBusAddr instead */
/* Bit 2: Hold last output data when */
/* entering safe state */
/* Bit 4: Swap data of word modules */
unsigned char bDpv1C1BufLen; /* Length of DPV1 class 1 buffer */
/* (including 4 bytes DPV1 header) */
unsigned char bDpv1C2BufLen; /* Length of DPV1 class 2 buffer */
/* (including 4 bytes DPV1 header) */
unsigned char bMiscUserFlags; /* Misc. flags for user */
unsigned char bMiscTaskFlags; /* Misc. flags for task */
unsigned char bBufferLen; /* Length of PARA_DIAG_BUFFER */
union {
struct {
unsigned char bType; /* Type of module */
unsigned char bLen; /* Length of module */
} MODULE[24];
struct {
unsigned char abExtDiagData[32]; /* Extended diagnostic data */
unsigned char abReserved3[16];
} DIAG_DATA;
} BUFFER;
} DPS_TASK_PARAMETER;
Einen Anfang habe ich schon gemacht, komm aber nicht mehr weiter sobald "union" kommt
Delphi-Quellcode:
Type
DPS_TASK_PARAMETERtag=record
bPlcMode : byte;
usWatchdogTime : shortint;
abReserved1:array[1..3] of byte;
...
...
bBufferLen: byte
?????????????
????????????
wäre sehr dankbar für eine Hilfe
[edit=mkinzler]Quellcode-Tags eingefügt Mfg, mkinzler[/edit]