BCB (5) und Funktionszeiger für WinApi
-
Hallo.
Ich möchte gerne aus meinem Programm herraus einen Hook setzen (mit hilfe der WinApi Funktion SetWindowsHookEx) und die CallBack Funktion in einem eigenen Thread laufen lassen...
Soweit sogut. Beim Aufruf von SetWindowsHookEx kommt nun immer folgender Fehler:[C++ Fehler] Runn.cpp(138): E2034 Konvertierung von 'long (* (_closure )(int,unsigned int,long))(int,unsigned int,long)' nach 'long (__stdcall *)(int,unsigned int,long)' nicht möglich
die CallBack Funktion ist folgendermaßen definiert:
LRESULT CALLBACK CallWndProc(int nCode,WPARAM wParam,LPARAM lParam);
Ich hoffe es kann mir wer helfen.
MfG Moses
-
achja, was ich vergessen hatte:
die CallBack Funktion ist Memberfunktion eines Thread Objects...
-
Und genau da wird das Problem liegen. Callback-Funktionen dürfen nicht Mitglied einer Klasse sein (meiner Erfahrung nach, begründen kann ich es nicht :)).
-
Original erstellt von Jansen:
begründen kann ich es nicht :)).zeiger auf funktion im bcb5? letzter post.
-junix
-
Sehr schön!