With Windows, applications can use hooks to filter messages on a systemwide basis. A Windows hook is a function that receives and processes events before they are sent to an application's message loop. For example, a function that provides special-purpose processing of keystrokes before passing them to an application is a Windows hook function.
There are seven types of Windows hooks, which are explained more fully in the Microsoft Windows Programmer's Reference, Volume 2.