Ottieni la maniglia della finestra su cui è stato fatto clic sul pulsante del mouse
Domanda
Ehi, sto usando Windows Hook, ho installato l'hook del mouse, a livello di sistema e funziona perfettamente. Ora c'è un problema, ho bisogno di ottenere la maniglia della finestra su cui è stato fatto clic con il mouse .. Come posso farlo? L'evento hook del mouse ci trasmette tali informazioni?
Soluzione
Dato che stai usando WH_MOUSE_LL
, stai creando un hook di basso livello, che in realtà riceve un puntatore a MSLLHOOKSTRUCT
che non ha un membro hwnd
.
Devi impostare un normale hook del mouse usando WH_MOUSE
; otterrai quindi un puntatore al MOUSEHOOKSTRUCT
che ti aspetti ...
Altri suggerimenti
Utilizza la funzione WindowFromPoint
per ottenere la finestra in una determinata posizione.
Supponendo di impostare un WH_MOUSE hook , il tuo MouseProc riceve un puntatore a una MOUSEHOOKSTRUCT struct . Poiché il membro hwnd è NULL, puoi provare a utilizzare WindowFromPoint con il membro pt della struttura. Il membro pt è la coordinata al momento della creazione del messaggio.