Panneau de configuration traitement des messages

La fonction de rappel CPlApplet traite tous les messages envoyés à un élément Panneau de configuration par Windows. Les messages envoyés à la fonction sont dans un ordre spécifique. Par le même jeton, l’élément .cpl nécessite que les messages soient traités d’une manière spécifique.

Tout d’abord, la fonction CPlApplet reçoit le message CPL_INIT lorsque Windows charge pour la première fois l’élément Panneau de configuration. La fonction doit effectuer toute initialisation, telle que l’allocation de la mémoire, et retourner des valeurs différentes de zéro. Si CPlApplet ne peut pas terminer l’initialisation, il doit retourner zéro, ce qui permet à Windows de mettre fin à la communication et de libérer la DLL.

Ensuite, si le message CPL_INIT a réussi, Windows envoie le message CPL_GETCOUNT. La fonction doit ensuite retourner le nombre d’éléments Panneau de configuration pris en charge par le fichier .dll.

La fonction CPlApplet reçoit ensuite un message CPL_INQUIRE et un message CPL_NEWINQUIRE pour chaque élément Panneau de configuration pris en charge par le fichier .dll. La fonction remplit une structure CPLINFO ou NEWCPLINFO avec des informations sur votre élément, telles que son nom, son icône et une chaîne descriptive. La plupart des applications doivent traiter le message CPL_INQUIRE et ignorer le message CPL_NEWINQUIRE. Le message CPL_INQUIRE fournit des informations sous une forme que Windows peut mettre en cache, ce qui permet d’obtenir de bien meilleures performances. Le message CPL_NEWINQUIRE est utilisé uniquement si vous devez modifier l’icône de votre élément ou afficher les chaînes en fonction de l’état de l’ordinateur. Panneau de configuration éléments qui utilisent CPL_NEWINQUIRE sont introuvables par une recherche de menu Démarrer dans Windows Vista, car elle repose sur la mise en cache.

La fonction CPlApplet reçoit ensuite un message CPL_DBLCLK en tant que notification indiquant que l’utilisateur a choisi l’icône qui représente l’élément Panneau de configuration. La fonction peut recevoir ce message n’importe quel nombre de fois. Le message inclut l’identificateur d’élément et le pointeur lpData retournés dans la structure CPLINFO ou NEWCPLINFO dans l’appel à CPL_INQUIRE ou CPL_NEWINQUIRE. La fonction doit afficher la boîte de dialogue correspondante et traiter l’entrée utilisateur suivante.

Outre CPL_DBLCLK, le message CPL_STARTWPARMS peut être envoyé si un élément de Panneau de configuration est appelé avec des paramètres d’entrée, par exemple à partir d’une invite de commandes ou d’un autre programme. Le message inclut l’identificateur d’élément ainsi que la chaîne de paramètre supplémentaire.

Avant la fin de l’application de contrôle, CPlApplet reçoit le message CPL_STOP une fois pour chaque élément Panneau de configuration pris en charge par le fichier .dll. Le message inclut l’identificateur de l’élément Panneau de configuration et le pointeur lpData retourné dans la structure CPLINFO ou NEWCPLINFO dans l’appel à CPL_INQUIRE ou CPL_NEWINQUIRE. La fonction doit libérer toute la mémoire qu’elle a allouée pour la boîte de dialogue spécifiée.

Après le dernier message CPL_STOP, CPlApplet reçoit un message CPL_EXIT. La fonction doit libérer toute la mémoire allouée restante et annuler l’inscription des classes de fenêtre privées qu’elle a pu inscrire. Immédiatement après le retour de la fonction à partir de ce message, Windows libère l’élément Panneau de configuration en appelant la fonction FreeLibrary.

éléments Panneau de configuration

Conseils sur l’expérience utilisateur

Inscription d’éléments Panneau de configuration

Utilisation de CPLApplet

Exécution des éléments de Panneau de configuration

Extension des éléments de Panneau de configuration système

Affectation de catégories Panneau de configuration

Création de liens de tâche pouvant faire l’objet d’une recherche pour un élément Panneau de configuration

Accès aux Panneau de configuration en mode sans échec sous Windows Vista