Condividi tramite


Funzione UnhookWinEvent (winuser.h)

Rimuove una funzione hook di eventi creata da una chiamata precedente a SetWinEventHook.

Sintassi

BOOL UnhookWinEvent(
  [in] HWINEVENTHOOK hWinEventHook
);

Parametri

[in] hWinEventHook

Tipo: HWINEVENTHOOK

Handle per l'hook dell'evento restituito nella chiamata precedente a SetWinEventHook.

Valore restituito

Tipo: BOOL

In caso di esito positivo, restituisce TRUE; in caso contrario, restituisce FALSE.

Tre errori comuni causano l'esito negativo di questa funzione:

  • Il parametro hWinEventHook è NULL o non valido.
  • L'hook dell'evento specificato da hWinEventHook è già stato rimosso.
  • UnhookWinEvent viene chiamato da un thread diverso dalla chiamata originale a SetWinEventHook.

Commenti

Questa funzione rimuove l'hook di eventi specificato da hWinEventHook che impedisce alla funzione di callback corrispondente di ricevere ulteriori notifiche degli eventi. Se il thread del client termina, il sistema chiama automaticamente questa funzione.

Chiamare questa funzione dallo stesso thread che ha installato l'hook dell'evento. UnhookWinEvent ha esito negativo se viene chiamato da un thread diverso dalla chiamata che corrisponde a SetWinEventHook.

Se WINEVENT_INCONTEXT è stato specificato quando è stato installato questo hook eventi, il sistema tenta di scaricare la DLL corrispondente da tutti i processi che lo hanno caricato. Anche se lo scaricamento non viene eseguito immediatamente, la funzione hook non viene chiamata dopo la restituzione di UnhookWinEvent . Per altre informazioni su WINEVENT_INCONTEXT, vedere Funzioni hook nel contesto.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winuser.h (include Windows.h)
Libreria User32.lib
DLL User32.dll
Componente ridistribuibile Accessibilità attiva 1.3 RDK in Windows NT 4.0 con SP6 e versioni successive e Windows 95