Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Nachricht abfangen - Maushook (https://www.delphipraxis.net/5869-nachricht-abfangen-maushook.html)

OrallY 24. Jun 2003 18:09

Ich muss mich entschuldigen, Duffy. Diese Prozedur ist der Schlüssel! Wenn ich einen WH_MOUSE_LL installiere und die Prozedur ausklammere, geht gar nix mehr mit der Maus.
(Ich hatte das ganze schonmal probiert, aber vergessen die neu kompilierte DLL auch zu benutzen :wall:).
Jetzt muss ich nur noch herausfinden, wie ich es schaffe, dass man die Maus noch bewegen kann :wink: .

Sharky 26. Jun 2003 11:57

Hai Orally,

bist Du bei dieser Sache schon weitergekommen?

Ich finde nämlich keine Lösung :cry:

negaH 27. Jun 2003 11: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

OrallY 21. Dez 2003 13:26

Re: Nachricht abfangen - Maushook
 
Kannst du mir das mit WH_CALLWNDPROC bitte ein wenig näher erklären negaH?

OrallY 24. Dez 2003 14:49

Re: Nachricht abfangen - Maushook
 
Ich hab mal grad ein wenig im PSDK geblättert und bin auf folgendes gestoßen:
Zitat:

The CallWndProc hook procedure can examine the message, but it cannot modify it. After the hook procedure returns control to the system, the message is passed to the window procedure.
Das heißt also, dass dieser Hook für mich nicht in Frage kommt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:17 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz