Re: Funktionsaufruf von C nach Delphi übersetzen
31. Jul 2007, 17:32
Probier stdcall statt cdecl. Die C Deklaration ist nicht eindeutig, da Projektoptionen die Calling Convention veraendern koennen.
Es ist bei C Deklarationen nicht erkennbar ob man "datentyp * param1" zu "var Param1: datentyp" oder "param1: Pdatentyp" uebersetzen soll. Nur die Dokumentation kann da helfen. Ein Zeiger kann in C Call-by-reference oder Zeiger auf den Beginn eines Arrays bedeuten. Nur die Dokumentation kann da helfen.
"long *" deutet aber ein "var Param3: Longint" an und die uebliche Bedeutung das man eine Arraylaenge darin platziert und der Aufruf dann mit der Anzahl ausgefuellter Array-Elemente zurueckkommt.
Zeig mal wie du die Funktion aufrufst.
|