Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#13
  Alt 27. Jun 2003, 12:44
PeekMessage() oder GetMessage() in globalen Hooks sind extrem gefährlich. Einige der Hooks werden nur aufgerufen WEIL man PeekMessage() GetMessage() aufruft. In deinem Falle können als tödliche Rekursionen im Hook entstehen.

Normalerweise sollte man die betreffende Message NICHT mit CallNextHookEx() weiterleiten. Aber, nicht mit jedem Hook funktioniert das. Zudem können die Hooks meistens die Messages auch nicht ändern.

So leid es mit tut, aber es bleiben zwei Lösungen:
1.) VXD/SYS Treiber coden
2.) neben WH_MOUSE noch WH_CALLWNDPROC Hook installieren. Dort die WM_RBUTTONxxxx Messages abfangen, und durch WM_NULL Messages ersetzen.
WH_CALLWNDPROC Hooks können nämlich den Messagerecord manipulieren.

Gruß hagen
  Mit Zitat antworten Zitat