Forum: Programmieren allgemein
by Beowulf01,
24. Feb 2011
Selbst gefunden...
http://www.delphipraxis.net/41047-tutorial-debugging-delphi-fuer-anfaenger-und-fortgeschr.html
Forum: Programmieren allgemein
by Beowulf01,
24. Feb 2011
Danke, das hatte ich mir schon gedacht und gestern angefangen alle Structs zu suchen, wo ich das padding einführen muss. Echt fies diese Sache...
Ich hab angefangen in C mit sizeof und offsetof die Daten zu prüfen. Mal sehen, ob dann sich das Callback zurückmeldet...
Forum: Programmieren allgemein
by Beowulf01,
23. Feb 2011
Sorry ich bezog mich auf dieses theoretisch beschrieben Struct:
Hier ist der C-Quellcode
typedef struct {
UINT8 deviceType ;
UINT8 orderId ;
UINT16 hwRevision;
UINT8 swRevisionPrefix;
Forum: Programmieren allgemein
by Beowulf01,
23. Feb 2011
Ok, bei dem Rückgabewert ist mir eine Fehler unterlaufen. Hab gerade mal nachgeschaut. Die aktuelle Version ist jetzt:
TCbfDataRWProc =
function (
DevHndl : UINT32;
pAddr : PTDevAddr;
BufLen : UINT32;
pBuffer : PUINT8;
Ioxs : EIoXS
Forum: Programmieren allgemein
by Beowulf01,
22. Feb 2011
Wie müsste denn das mit Rückgabewert aussehen?
IOXS ist von folgendem Typ:
EIoXS = (S_GOOD = 0,
S_BAD = 1); //represents IO status
Forum: Programmieren allgemein
by Beowulf01,
22. Feb 2011
Ich komme irgendwie nicht weiter...
Kann das Problem das Allignment der Daten in den Strukturen sein?
Ich habe eben festgestellt, dass bei einem MethodenAufruf eine C-Struktur 58 Byte groß ist und die dazugehörige Delphi-Struktur nur 56 Byte.
Die Struktur besteht aus :
Byte-Array (26 Bytes)
Byte-Array (21 Bytes)
Word ( 2 Bytes)
Byte ( 1 Byte )
Forum: Programmieren allgemein
by Beowulf01,
22. Feb 2011
C Beispiel:
Header-File
#undef ATTR_PACKED
#if defined(_MSC_VER)
#pragma pack( push, safe_old_packing, 4 )
#define ATTR_PACKED
...