ShellProc fonction)
Description
Fonction de rappel définie par l’application ou définie par la Bibliothèque utilisée avec la fonction SetWindowsHookEx . La fonction reçoit des notifications d’événements de Shell du système.
Le type HOOKPROC définit un pointeur vers cette fonction de rappel. ShellProc est un espace réservé pour le nom de la fonction définie par l’application ou par la bibliothèque.
LRESULT CALLBACK ShellProc(
_In_ int nCode,
_In_ WPARAM wParam,
_In_ LPARAM lParam
);
Paramètres
nCode [in]
Type : int
Code de raccordement. Si nCode est inférieur à zéro, la procédure de raccordement doit passer le message à la fonction CallNextHookEx sans traitement supplémentaire et doit retourner la valeur retournée par CallNextHookEx. Ce paramètre peut prendre les valeurs suivantes.
| Valeur | Signification |
|---|---|
| HSHELL_ACCESSIBILITYSTATE 11 | L’état de l’accessibilité a changé. |
| HSHELL_ACTIVATESHELLWINDOW 3 | L’interpréteur de commandes doit activer sa fenêtre principale. |
| HSHELL_APPCOMMAND 12 | L’utilisateur a terminé un événement d’entrée (par exemple, j’ai appuyé sur un bouton de commande de l’application sur la souris ou sur une touche de commande de l’application sur le clavier) et l’application n’a pas géré le WM_APPCOMMAND message généré par cette entrée. Si la procédure Shell gère le message WM_COMMAND , elle ne doit pas appeler CallNextHookEx. Pour plus d’informations, consultez la section valeur de retour. |
| HSHELL_GETMINRECT 5 | Une fenêtre est réduite ou agrandie. Le système a besoin des coordonnées du rectangle réduit pour la fenêtre. |
| HSHELL_LANGUAGE 8 | La langue du clavier a été modifiée ou une nouvelle disposition du clavier a été chargée. |
| HSHELL_REDRAW 6 | Le titre d’une fenêtre dans la barre des tâches a été redessiné. |
| HSHELL_TASKMAN 7 | L’utilisateur a sélectionné la liste des tâches. une application d’environnement qui fournit une liste de tâches doit retourner la valeur TRUE pour empêcher Windows de démarrer sa liste des tâches. |
| HSHELL_WINDOWACTIVATED 4 | L’activation a été remplacée par une nouvelle fenêtre de niveau supérieur, sans propriétaire. |
| HSHELL_WINDOWCREATED 1 | Une fenêtre de niveau supérieur sans propriétaire a été créée. La fenêtre existe lorsque le système appelle ce hook. |
| HSHELL_WINDOWDESTROYED 2 | Une fenêtre de niveau supérieur, sans propriétaire, va être détruite. La fenêtre existe toujours lorsque le système appelle ce hook. |
| HSHELL_WINDOWREPLACED 13 | Une fenêtre de niveau supérieur est remplacée. La fenêtre existe lorsque le système appelle ce hook. |
wParam [in]
Type : wParam
Ce paramètre dépend de la valeur du paramètre nCode , comme indiqué dans le tableau suivant.
| nCode | wParam |
|---|---|
| HSHELL_ACCESSIBILITYSTATE | Indique quelle fonctionnalité d’accessibilité a changé d’État. Cette valeur est l’une des suivantes : ACCESS_FILTERKEYS, ACCESS_MOUSEKEYS ou ACCESS_STICKYKEYS. |
| HSHELL_APPCOMMAND | Indique où le message de WM_APPCOMMAND a été envoyé à l’origine ; par exemple, le handle d’une fenêtre. Pour plus d’informations, consultez paramètre cmd dans WM_APPCOMMAND. |
| HSHELL_GETMINRECT | Handle vers la fenêtre réduite ou agrandie. |
| HSHELL_LANGUAGE | Handle de la fenêtre. |
| HSHELL_REDRAW | Handle de la fenêtre redessinée. |
| HSHELL_WINDOWACTIVATED | Handle de la fenêtre activée. |
| HSHELL_WINDOWCREATED | Handle de la fenêtre créée. |
| HSHELL_WINDOWDESTROYED | Handle vers la fenêtre détruite. |
| HSHELL_WINDOWREPLACED | Handle de la fenêtre qui est remplacée. Windows 2000 : non pris en charge. |
lParam [in]
Type : lParam
Ce paramètre dépend de la valeur du paramètre nCode , comme indiqué dans le tableau suivant.
| nCode | lParam |
|---|---|
| HSHELL_APPCOMMAND | GET_APPCOMMAND_LPARAM(lParam) commande d’application correspondant à l’événement d’entrée. GET_DEVICE_LPARAM(lParam) indique ce qui a généré l’événement d’entrée ; par exemple, la souris ou le clavier. Pour plus d’informations, consultez la description du paramètre uDevice sous WM_APPCOMMAND. GET_FLAGS_LPARAM(lParam) dépend de la valeur de cmd dans WM_APPCOMMAND. Par exemple, il peut indiquer quelles clés virtuelles ont été conservées lors de l’envoi de l' WM_APPCOMMAND message. Pour plus d’informations, consultez le paramètre de description dwCmdFlags sous WM_APPCOMMAND. |
| HSHELL_GETMINRECT | Pointeur vers une structure Rect . |
| HSHELL_LANGUAGE | Handle d’une disposition de clavier. |
| HSHELL_MONITORCHANGED | Handle vers la fenêtre qui a été déplacée vers un autre moniteur. |
| HSHELL_REDRAW | La valeur est true si la fenêtre clignote, ou false dans le cas contraire. |
| HSHELL_WINDOWACTIVATED | La valeur est TRUE si la fenêtre est en mode plein écran, ou false dans le cas contraire. |
| HSHELL_WINDOWREPLACED | Handle de la nouvelle fenêtre. Windows 2000 : non pris en charge. |
Retours
Type : LRESULT
La valeur de retour doit être égale à zéro, sauf si la valeur de nCode est HSHELL_APPCOMMAND et que la procédure Shell gère le message WM_COMMAND . Dans ce cas, le retour doit être différent de zéro.
Notes
Installez cette procédure de hook en spécifiant le type de hook WH_SHELL et un pointeur vers la procédure de Hook dans un appel à la fonction SetWindowsHookEx .