Einzelnen Beitrag anzeigen

zeras

Registriert seit: 11. Mär 2007
Ort: Saalkreis
1.633 Beiträge
 
Delphi 12 Athens
 
#1

Callback Funktion aus C DLL

  Alt 16. Apr 2011, 20:15
Hallo,

ich muss eine Callbackfunktion einrichten, welche dann aus einer C DLL aufgerufen wird.

Hier die Deklaration in C

typedef void _cdecl Callback(
void * CallbackData,
DWORD Adr,
DWORD Adr2,
int dAdr3)

Andere Funktionen aus der gleichen DLL habe ich erfolgreich beispielsweise so implementiert:
Function GetAdr1(
Name: PAnsiChar;
Ad1: pLongint
): Boolean; stdcall;

Mich wundert nur, dass ich meistens mit "stdcall" zurecht komme, die obige aber als _cdecl deklariert ist.
Ist das normal, dass man in der selben DLL die Aufrufe anderst implementiert?

Ich würde die Funktion wie folgt übersetzen:

Function void _cdecl Callback(
CallbackData void,
Adr LongInt,
Adr2 LongInt,
dAdr3 Integer): cdecl;

Ist das korrekt?

Wichtig wäre noch die aktuelle Zeit mit Aufruf der Callbackfunktion zu bekommen. Ich habe des Öfteren gelesen, dass die ZEit von Windows sehr ungenau ist. Reichen würde mir die Zeit in Millisekunden oder ist das zuviel verlangt von Windows?
Matthias
Es ist nie falsch das Richtige zu tun!
- Mark Twain
  Mit Zitat antworten Zitat