Dela via


Krokar

En krok är en punkt i systemets mekanism för meddelandehantering där ett program kan installera en subrutin för att övervaka meddelandetrafiken i systemet och bearbeta vissa typer av meddelanden innan de når målfönstrets procedur.

I det här avsnittet

Namn Beskrivning
Hook Översikt Diskuterar hur krokar ska användas.
Använda hookar Visar hur du utför uppgifter som är associerade med krokar.
Hook-referens Innehåller API-referensen.

Hook Functions

Namn Beskrivning
CallMsgFilter Skickar det angivna meddelandet och krokkoden till de krokprocedurer som är associerade med WH_SYSMSGFILTER och WH_MSGFILTER krokprocedurer.
CallNextHookEx Skickar krokinformationen till nästa krokprocedur i den aktuella krokkedjan. En krokprocedur kan anropa den här funktionen antingen före eller efter bearbetning av krokinformationen.
CallWndProc En programdefinierad eller biblioteksdefinierad återanropsfunktion som används med funktionen SetWindowsHookEx. Systemet anropar den här funktionen innan du anropar fönsterproceduren för att bearbeta ett meddelande som skickas till tråden.
CallWndRetProc En programdefinierad eller biblioteksdefinierad återanropsfunktion som används med funktionen SetWindowsHookEx. Systemet anropar den här funktionen när funktionen SendMessage anropas. Krokproceduren kan undersöka meddelandet; Det går inte att ändra det.
CBTProc En programdefinierad eller biblioteksdefinierad återanropsfunktion som används med funktionen SetWindowsHookEx. Systemet anropar den här funktionen innan du aktiverar, skapar, förstör, minimerar, maximerar, flyttar eller ändrar storlek på ett fönster. innan du slutför ett systemkommando. innan du tar bort en mus- eller tangentbordshändelse från systemmeddelandekön. innan du ställer in tangentbordsfokus; eller innan du synkroniserar med systemmeddelandekön. Ett datorbaserat program för utbildning (CBT) använder den här krokproceduren för att ta emot användbara meddelanden från systemet.
DebugProc En programdefinierad eller biblioteksdefinierad återanropsfunktion som används med funktionen SetWindowsHookEx. Systemet anropar den här funktionen innan du anropar de krokprocedurer som är associerade med någon typ av krok. Systemet skickar information om kroken som ska anropas till DebugProc hook-proceduren, som undersöker informationen och avgör om kroken ska kunna anropas.
ForegroundIdleProc En programdefinierad eller biblioteksdefinierad återanropsfunktion som används med funktionen SetWindowsHookEx. Systemet anropar den här funktionen när förgrundstråden håller på att bli inaktiv.
GetMsgProc En programdefinierad eller biblioteksdefinierad återanropsfunktion som används med funktionen SetWindowsHookEx. Systemet anropar den här funktionen när funktionen GetMessage eller PeekMessage har hämtat ett meddelande från en programmeddelandekö. Innan det hämtade meddelandet returneras till anroparen skickar systemet meddelandet till krokproceduren.
JournalPlaybackProc En programdefinierad eller biblioteksdefinierad återanropsfunktion som används med funktionen SetWindowsHookEx. Vanligtvis använder ett program den här funktionen för att spela upp en serie mus- och tangentbordsmeddelanden som tidigare registrerats av JournalRecordProc hook-procedur. Så länge en JournalPlaybackProc- hook-procedur har installerats inaktiveras vanliga mus- och tangentbordsindata.
JournalRecordProc En programdefinierad eller biblioteksdefinierad återanropsfunktion som används med funktionen SetWindowsHookEx. Funktionen registrerar meddelanden som systemet tar bort från systemmeddelandekön. Senare kan ett program använda en JournalPlaybackProc hook-procedur för att spela upp meddelandena.
KeyboardProc En programdefinierad eller biblioteksdefinierad återanropsfunktion som används med funktionen SetWindowsHookEx. Systemet anropar den här funktionen när ett program anropar funktionen GetMessage eller PeekMessage och det finns ett tangentbordsmeddelande (WM_KEYUP eller WM_KEYDOWN) som ska bearbetas.
LowLevelKeyboardProc En programdefinierad eller biblioteksdefinierad återanropsfunktion som används med funktionen SetWindowsHookEx. Systemet anropar den här funktionen varje gång en ny tangentbordsinmatningshändelse kommer att publiceras i en trådinmatningskö.
LowLevelMouseProc En programdefinierad eller biblioteksdefinierad återanropsfunktion som används med funktionen SetWindowsHookEx. Systemet anropar den här funktionen varje gång en ny musindatahändelse publiceras i en trådindatakö.
MessageProc En programdefinierad eller biblioteksdefinierad återanropsfunktion som används med funktionen SetWindowsHookEx. Systemet anropar den här funktionen när en indatahändelse inträffar i en dialogruta, meddelanderuta, meny eller rullningslist, men innan meddelandet som genereras av indatahändelsen bearbetas. Hook-proceduren kan övervaka meddelanden för en dialogruta, meddelanderuta, meny eller rullningslist som skapats av ett visst program eller alla program.
MouseProc En programdefinierad eller biblioteksdefinierad återanropsfunktion som används med funktionen SetWindowsHookEx. Systemet anropar den här funktionen när ett program anropar funktionen GetMessage eller PeekMessage och det finns ett musmeddelande som ska bearbetas.
SetWindowsHookEx Installerar en programdefinierad krokprocedur i en krokkedja. Du skulle installera en hook-procedur för att övervaka systemet för vissa typer av händelser. Dessa händelser associeras antingen med en specifik tråd eller med alla trådar på samma skrivbord som den anropande tråden.
ShellProc En programdefinierad eller biblioteksdefinierad återanropsfunktion som används med funktionen SetWindowsHookEx. Funktionen tar emot meddelanden om Shell-händelser från systemet.
SysMsgProc En programdefinierad eller biblioteksdefinierad återanropsfunktion som används med funktionen SetWindowsHookEx. Systemet anropar den här funktionen när en indatahändelse inträffar i en dialogruta, meddelanderuta, meny eller rullningslist, men innan meddelandet som genereras av indatahändelsen bearbetas. Funktionen kan övervaka meddelanden för valfri dialogruta, meddelanderuta, meny eller rullningslist i systemet.
UnhookWindowsHookEx Tar bort en krokprocedur som installeras i en krokkedja av funktionen SetWindowsHookEx.

Hook-meddelanden

Namn Beskrivning
WM_CANCELJOURNAL Publiceras i ett program när en användare avbryter programmets journalaktiviteter. Meddelandet publiceras med ett NULL- fönsterhandtag.
WM_QUEUESYNC Skickas av ett CBT-program för att separera användarindatameddelanden från andra meddelanden som skickas via WH_JOURNALPLAYBACK-proceduren.

Krokstrukturer

Namn Beskrivning
CBT_CREATEWND Innehåller information som skickas till en WH_CBT hook-procedur, CBTProc, innan ett fönster skapas.
CBTACTIVATESTRUCT Innehåller information som skickas till en WH_CBT hook-procedur, CBTProc, innan ett fönster aktiveras.
CWPRETSTRUCT Definierar de meddelandeparametrar som skickas till en WH_CALLWNDPROCRET hook-procedur, CallWndRetProc.
CWPSTRUCT Definierar de meddelandeparametrar som skickas till en WH_CALLWNDPROC hook-procedur CallWndProc.
DEBUGHOOKINFO Innehåller felsökningsinformation som skickas till en WH_DEBUG hook-procedur DebugProc.
EVENTMSG Innehåller information om ett maskinvarumeddelande som skickas till systemmeddelandekön. Den här strukturen används för att lagra meddelandeinformation för funktionen JournalPlaybackProc motringning.
KBDLLHOOKSTRUCT Innehåller information om en tangentbordsinmatningshändelse på låg nivå.
MOUSEHOOKSTRUCT Innehåller information om en mushändelse som skickas till en WH_MOUSE hook-procedur, MouseProc.
MOUSEHOOKSTRUCTEX Innehåller information om en mushändelse som skickas till en WH_MOUSE hook-procedur, MouseProc.
MSLLHOOKSTRUCT Innehåller information om en musindatahändelse på låg nivå.

SetWinEventHook