Einzelnen Beitrag anzeigen

OLLI_T

Registriert seit: 13. Okt 2003
Ort: Nähe Wetzlar / Hessen
143 Beiträge
 
Delphi 5 Enterprise
 
#2

Re: daten vom hook kommen nicht an

  Alt 9. Jan 2004, 10:41
HiHo!

Völlig klar, dass der Hook nur mit Deiner Anwendung funktioniert. Denn nur in dieser Kopie der Hook DLL ist Dein Fenster-Handle (WindowHandle) definiert. Wird die DLL jedoch in den Adressraum einer anderen laufenden Anwendung geladen, so bricht Dein Kartenhaus zusammen. Abhilfe kannst Du dadurch schaffen, indem Du die Message an alle Fenster schickst:
PostMessage(HWND_BROADCAST, WM_USER + 1678, 0, 0); Das kann allerdings dazu führen, dass das System ein wenig erlahmt; insbesondere bei einem MouseHook ist mir das unangenehm aufgefallen. Eleganter ist es da mit einem MemoryMappedFile zu arbeiten, das alle relevanten Daten an die Host-Anwendung weiterreicht.

Achso und für die Message Konstante kannst Du auch WM_USER + 35 oder WM_USER + 145 verwenden. Das ist Jacke wie Hose.

Viele Grüsse

OLLI
No Pain No Gain!
  Mit Zitat antworten Zitat