II. Principe▲
II-A. Définition▲
Le Hook est un « hameçon » posé par une application dans le flux de messages système d'un certain type. Il permet à cette application de « capturer » ces messages et d'y réagir.
II-B. Fonctionnement▲
Techniquement, il s'agit de positionner une procédure de traitement dans une chaîne de traitement de messages d'un type donné.
Il faut pour cela :
- choisir le positionnement du Hook :
- Hook Local : capture des messages dans le flux d'un thread (celui de l'application ou un autre),
- Hook Global : capture des messages dans le flux système ; - choisir le type de messages devant être capturés ;
- positionner le Hook au sein de la chaîne de traitement de ces messages ;
- traiter les messages par une procédure dédiée ;
- mettre à disposition les messages pour les autres Hooks de la chaîne ;
- lorsque le Hook devient inutile, le retirer de la chaîne.