Ein Hook (zu deutsch: Haken) ist eine Einrichtung im Windows Betriebssystem, deren Aufgabe darin besteht Systemnachrichten abzufangen.
Im „Normalzustand“ kann eine Anwendung (bzw. nur ihr aktives Fenster) nur Nachrichten empfangen, welche auch für diese Anwendung (bzw. das aktive Fenster) bestimmt sind.
Am Beispiel der Maus würde das in folgender Reihenfolge funktionieren:
1. Benutzer betätigt die Maus (Bewegung, Klick oder Mausrad drehen)
2. Windows bekommt dies über die Hardware und das BIOS mit.
3. Windows überprüft, welche Anwendung, bzw. auf welches Fenster z.B. geklickt wurde.
4. Windows entscheidet an welche Anwendung bzw. welches Fenseter die Nachrichten (Mausaktivitäten) geschickt werden sollen.
5. Windows schickt die entsprechende Mausaktivität an die aktive Anwendung bzw. das aktive Fenster der aktiven Anwendung.
Ein Hook setzt nun am Punkt 3 an, um praktisch als Zwischensystem zu fungieren. Somit bekommt nun dieses Zwischensystem die Nachrichten der Mausaktivitäten zuerst und entscheidet darüber, was mit diesen passiert.
Das Zwischensystem hat somit die Möglichkeit über alle Mausaktivitäten zu verfügen, bevor sie an andere Anwendungen weitergeleitet werden.
Dabei gibt es 2 Arten von Hooks.
a) Lokale Hooks: Hier werden die Nachrichten, nur einer Anwendung behandelt
b) Systemweite bzw. globale Hooks Hier werden alle Nachrichten verarbeitet
...entnommen
hier