Delen via


Haken

Een hook is een punt in het systeemmechanisme voor berichtafhandeling waarbij een toepassing een subroutine kan installeren om het berichtverkeer in het systeem te bewaken en bepaalde typen berichten te verwerken voordat ze de doelvensterprocedure bereiken.

In deze sectie

Naam Beschrijving
Overzicht van Hook- Hier wordt besproken hoe hooks moeten worden gebruikt.
Hooks gebruiken Demonstreert hoe u taken uitvoert die zijn gekoppeld aan hooks.
Hook Reference- Bevat de API-verwijzing.

Hook-functies

Naam Beschrijving
CallMsgFilter- Geeft het opgegeven bericht en de hookcode door aan de hookprocedures die zijn gekoppeld aan de WH_SYSMSGFILTER- en WH_MSGFILTER hookprocedures.
CallNextHookEx- Geeft de hookinformatie door aan de volgende haakprocedure in de huidige haakketting. Een hookprocedure kan deze functie aanroepen voor of na het verwerken van de hookgegevens.
CallWndProc- Een door de toepassing gedefinieerde of bibliotheekgedefinieerde callback-functie die wordt gebruikt met de functie SetWindowsHookEx. Het systeem roept deze functie aan voordat de vensterprocedure wordt aangeroepen om een bericht te verwerken dat naar de thread wordt verzonden.
CallWndRetProc- Een door de toepassing gedefinieerde of bibliotheekgedefinieerde callback-functie die wordt gebruikt met de functie SetWindowsHookEx. Het systeem roept deze functie aan nadat de functie SendMessage is aangeroepen. De hookprocedure kan het bericht onderzoeken; het kan niet worden gewijzigd.
CBTProc- Een door de toepassing gedefinieerde of bibliotheekgedefinieerde callback-functie die wordt gebruikt met de functie SetWindowsHookEx. Het systeem roept deze functie aan voordat een venster wordt geactiveerd, gemaakt, vernietigd, geminimaliseerd, gemaximaliseerd, verplaatst of het formaat van een venster wordt aangepast; voordat u een systeemopdracht voltooit; voordat u een muis- of toetsenbord gebeurtenis uit de systeemberichtwachtrij verwijdert; voordat u de toetsenbordfocus instelt; of voordat u synchroniseert met de systeemberichtwachtrij. Een computergebaseerde training (CBT)-toepassing maakt gebruik van deze hookprocedure om nuttige meldingen van het systeem te ontvangen.
DebugProc- Een door de toepassing gedefinieerde of bibliotheekgedefinieerde callback-functie die wordt gebruikt met de functie SetWindowsHookEx. Het systeem roept deze functie aan voordat de hookprocedures worden aangeroepen die aan elk type haak zijn gekoppeld. Het systeem geeft informatie door over de hook die moet worden aangeroepen aan de DebugProc hook procedure, die de informatie onderzoekt en bepaalt of de hook moet worden aangeroepen.
ForegroundIdleProc- Een door de toepassing gedefinieerde of bibliotheekgedefinieerde callback-functie die wordt gebruikt met de functie SetWindowsHookEx. Het systeem roept deze functie aan wanneer de voorgrondthread op het punt staat inactief te worden.
GetMsgProc- Een door de toepassing gedefinieerde of bibliotheekgedefinieerde callback-functie die wordt gebruikt met de functie SetWindowsHookEx. Het systeem roept deze functie aan wanneer de functie GetMessage of PeekMessage functie een bericht heeft opgehaald uit een berichtenwachtrij van een toepassing. Voordat het opgehaalde bericht aan de aanroeper wordt geretourneerd, geeft het systeem het bericht door aan de hookprocedure.
JournalPlaybackProc- Een door de toepassing gedefinieerde of bibliotheekgedefinieerde callback-functie die wordt gebruikt met de functie SetWindowsHookEx. Normaal gesproken gebruikt een toepassing deze functie om een reeks muis- en toetsenbordberichten af te spelen die eerder zijn vastgelegd door de JournalRecordProc hookprocedure. Zolang een JournalPlaybackProc hookprocedure is geïnstalleerd, is normale muis- en toetsenbordinvoer uitgeschakeld.
JournalRecordProc- Een door de toepassing gedefinieerde of bibliotheekgedefinieerde callback-functie die wordt gebruikt met de functie SetWindowsHookEx. De functie registreert berichten die het systeem verwijdert uit de systeemberichtwachtrij. Later kan een toepassing een JournalPlaybackProc hookprocedure gebruiken om de berichten af te spelen.
KeyboardProc- Een door de toepassing gedefinieerde of bibliotheekgedefinieerde callback-functie die wordt gebruikt met de functie SetWindowsHookEx. Het systeem roept deze functie aan wanneer een toepassing de GetMessage of PeekMessage functie aanroept en er een toetsenbordbericht (WM_KEYUP of WM_KEYDOWN) wordt verwerkt.
LowLevelKeyboardProc- Een door de toepassing gedefinieerde of bibliotheekgedefinieerde callback-functie die wordt gebruikt met de functie SetWindowsHookEx. Het systeem roept deze functie aan telkens wanneer een nieuwe toetsenbordinvoergebeurtenis op het punt staat te worden geplaatst in een thread-invoerwachtrij.
LowLevelMouseProc- Een door de toepassing gedefinieerde of bibliotheekgedefinieerde callback-functie die wordt gebruikt met de functie SetWindowsHookEx. Het systeem roept deze functie aan telkens wanneer een nieuwe muisinvoergebeurtenis op het punt staat te worden geplaatst in een thread-invoerwachtrij.
MessageProc- Een door de toepassing gedefinieerde of bibliotheekgedefinieerde callback-functie die wordt gebruikt met de functie SetWindowsHookEx. Het systeem roept deze functie aan nadat een invoergebeurtenis plaatsvindt in een dialoogvenster, berichtvak, menu of schuifbalk, maar voordat het bericht dat door de invoergebeurtenis wordt gegenereerd, wordt verwerkt. Met de hookprocedure kunnen berichten worden bewaakt voor een dialoogvenster, berichtvak, menu of schuifbalk die is gemaakt door een bepaalde toepassing of alle toepassingen.
MouseProc- Een door de toepassing gedefinieerde of bibliotheekgedefinieerde callback-functie die wordt gebruikt met de functie SetWindowsHookEx. Het systeem roept deze functie aan wanneer een toepassing de GetMessage of PeekMessage functie aanroept en er een muisbericht moet worden verwerkt.
SetWindowsHookEx- Hiermee wordt een toepassingsgedefinieerde haakprocedure in een haakketen geïnstalleerd. U installeert een hookprocedure om het systeem voor bepaalde soorten gebeurtenissen te bewaken. Deze gebeurtenissen zijn gekoppeld aan een specifieke thread of aan alle threads in hetzelfde bureaublad als de aanroepende thread.
ShellProc- Een door de toepassing gedefinieerde of bibliotheekgedefinieerde callback-functie die wordt gebruikt met de functie SetWindowsHookEx. De functie ontvangt meldingen van Shell-gebeurtenissen van het systeem.
SysMsgProc- Een door de toepassing gedefinieerde of bibliotheekgedefinieerde callback-functie die wordt gebruikt met de functie SetWindowsHookEx. Het systeem roept deze functie aan nadat een invoergebeurtenis plaatsvindt in een dialoogvenster, berichtvak, menu of schuifbalk, maar voordat het bericht dat door de invoergebeurtenis wordt gegenereerd, wordt verwerkt. De functie kan berichten bewaken voor elk dialoogvenster, berichtvak, menu of schuifbalk in het systeem.
UnhookWindowsHookEx Hiermee verwijdert u een haakprocedure die is geïnstalleerd in een haakketting door de SetWindowsHookEx functie.

Hook Notifications

Naam Beschrijving
WM_CANCELJOURNAL Gepost in een toepassing wanneer een gebruiker de logboekactiviteiten van de toepassing annuleert. Het bericht wordt geplaatst met een NULL- venstergreep.
WM_QUEUESYNC Verzonden door een CBT-toepassing om berichten van gebruikersinvoer te scheiden van andere berichten die via de WH_JOURNALPLAYBACK procedure worden verzonden.

Haakstructuren

Naam Beschrijving
CBT_CREATEWND Bevat informatie die wordt doorgegeven aan een WH_CBT haakprocedure, CBTProc-, voordat een venster wordt gemaakt.
CBTACTIVATESTRUCT- Bevat informatie die wordt doorgegeven aan een WH_CBT haakprocedure, CBTProc-, voordat een venster wordt geactiveerd.
CWPRETSTRUCT- Definieert de berichtparameters die worden doorgegeven aan een WH_CALLWNDPROCRET hookprocedure, CallWndRetProc-.
CWPSTRUCT- Definieert de berichtparameters die worden doorgegeven aan een WH_CALLWNDPROC hookprocedure, CallWndProc-.
DEBUGHOOKINFO- Bevat foutopsporingsinformatie die wordt doorgegeven aan een WH_DEBUG hookprocedure, DebugProc-.
EVENTMSG- Bevat informatie over een hardwarebericht dat naar de systeemberichtwachtrij wordt verzonden. Deze structuur wordt gebruikt voor het opslaan van berichtgegevens voor de JournalPlaybackProc callback-functie.
KBDLLHOOKSTRUCT- Bevat informatie over een invoergebeurtenis op laag niveau.
MOUSEHOOKSTRUCT- Bevat informatie over een muisgebeurtenis die is doorgegeven aan een WH_MOUSE haakprocedure, MouseProc-.
MOUSEHOOKSTRUCTEX- Bevat informatie over een muisgebeurtenis die is doorgegeven aan een WH_MOUSE haakprocedure, MouseProc-.
MSLLHOOKSTRUCT- Bevat informatie over een gebeurtenis met een muisinvoer op laag niveau.

SetWinEventHook