Généralités : Créer un applet dans le panneau de configuration n'a rien de sorcier. Je vais vous montrer comment procéder en éditant un fichier ".reg". Les notions à acquérir sont les suivantes :
Un applet tel qu'il apparait dans le panneau de configuration (affichage par catégorie, grandes icônes, petites icônes) est caractérisé par :
- un titre (ou nom de l'applet)
- une icône
- une commande (ou chemin complet vers un fichier exécutable)
- un nom de commande (utilisé en paramètre pour "control.exe /name ")
Toutes ces informations peuvent être inscritent directement dans le registre via des clés de registre, des valeurs, des données de valeurs. Cependant le référencement d'un applet nécessite obligatoirement la génération d'un GUID (ou CLSID) qui sera ajouté en tant que clé aux 2 emplacements suivants :
- Code:
-
HKEY_CLASSES_ROOT\CLSID
- Code:
-
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\ControlPanel\NameSpace
Mise en application : Nous allons prendre pour exemple un fichier exécutable (C:\Windows\regedit.exe) dont nous souhaitons voir apparaitre dans le panneau de configuration avec :
- son nom ou titre tel qu'il apparaitra (Editeur du registre)
- son icône visible également (C:\Windows\regedit.exe,0)
- et un évènement clickable afin de lancer cet exécutable depuis le Panneau de config (sa commande = C:\Windows\regedit.exe)
- un nom de commande afin de pouvoir utiliser la commande "control.exe /name <tonFichierExécutableSansExtension>" pour la lancer n'importe quand depuis une console exécuter ou en console cmd (regedit)
1- Avant toute chose il est nécessaire de générer un espace de nom (ou GUID ou CLSID) pour ajouter toutes les données ci-dessus au registre :
Vous avez la possibilité de générer un GUID depuis le Web :
http://www.guidgenerator.com/online-guid-generator.aspxou depuis cet utilitaire de Microsoft "GuidGen.exe" :
http://wallace87000.upd.fr/guidgen.7z Notre GUID pour l'exemple sera le suivant : b3fc1844-fd61-4726-9c87-63e4484ae300
2- Ouvrez cette branche du registre (HKCR) :
Ouvrez cette clé puis sélectionnez-là
- Code:
-
HKEY_CLASSES_ROOT\CLSID
Créez une nouvelle clé nommée puis sélectionnez-là :
- Code:
-
{b3fc1844-fd61-4726-9c87-63e4484ae300}
Créez une valeur chaine (Nouveau\valeur chaine) :
- Code:
-
LocalizedString
Saisissez comme donnée de la valeur le titre suivant :
- Code:
-
Editeur du registre
Créez une valeur chaine nommée :
- Code:
-
InfoTip
Saisissez comme donnée de la valeur l'indication qui apparaitra au survol de la souris sur l'icône :
- Code:
-
Toute la puissance de Windows se situe dans cet éditeur.
Créez une valeur chaine nommée :
- Code:
-
System.ControlPanel.Category
Saisissez comme donnée de la valeur la catégorie dans laquelle vous voulez que votre icône apparaisse dont voici les index :
1 = Apparence et personnalisation
2 = Matériel et audio
3 = Réseau et Internet
5 = Système et sécurité
6 = Horloge, langue et région
7 = Options d'ergonomie
8 = Programmes
9 = Comptes d'utilisateurs et protection utilisateurs
Nous choisissons la n°5.
Créez une valeur chaine nommée :
- Code:
-
System.ApplicationName
Saisissez comme donnée de la valeur le nom de votre module (sans espace blancs) :
- Code:
-
Regedit
Cela vous permettra de lancer la commande suivante :
- Code:
-
control.exe /name Regedit
Dans l'arborescence de la clé {b3fc1844-fd61-4726-9c87-63e4484ae300}
Créez une sous-clé nommée :
- Code:
-
DefaultIcon
Sélectionnez cette clé puis éditez la valeur chaine (Par défaut) en mettant le chemin de l'icône :
- Code:
-
C:\\Windows\\regedit.exe,0
Toujours dans l'arborescence de la clé {b3fc1844-fd61-4726-9c87-63e4484ae300}
Creéz une sous clé nommé :
- Code:
-
Shell
Dans cette clé (Shell) créez une sous-clé :
- Code:
-
Open
Dans cette sous clé (Open) créez une sous-clé :
- Code:
-
Command
Sélectionnez cette sous clé puis éditez la valeur chaine (Par défaut) :
- Code:
-
C:\\Windows\\regedit.exe
IMPORTANT : chaque données de valeur que vous inscrivez dans le registre nécessite qu'on double tous les "BackSlashs" (exemple : au lieu de ceci "" mettre cela "").
3- Ouvrez cette branche du registre (HKLM) :
Ouvrez cette clé puis sélectionnez-là :
- Code:
-
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\ControlPanel\NameSpace
Créez une nouvelle clé portant le même nom que la clé CLSID :
- Code:
-
{b3fc1844-fd61-4726-9c87-63e4484ae300}
Raffraichissez votre regsitre en pressant F5.
4- Créez un fichier ".reg" de suppression rapide :
Créez un nouveau fichier texte puis copiez-collez ceci dedans :
- Code:
-
Windows Registry Editor Version 5.00
; Créé par Wallace87000
[-HKEY_CLASSES_ROOT\CLSID\{b3fc1844-fd61-4726-9c87-63e4484ae300}]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\ControlPanel\NameSpace\{b3fc1844-fd61-4726-9c87-63e4484ae300}]
Enregistrez le sous le format de fichier ".reg". Vous pouvez l'utiliser pour supprimer rapidement votre applet qand vous le souhaitez.
Ouvrez votre panneau de configuration.
5- Une alternative pour ajouter des tâches dans l'applet :
Et il y a encore possibilité d'ajouter des sous-rubriques (tâches) avec un fichier ".xml" comme cela :
- Code:
-
<?xml version="1.0" ?>
<applications xmlns="http://schemas.microsoft.com/windows/cpltasks/v1" xmlns:sh="http://schemas.microsoft.com/windows/tasks/v1">
<application id="{b3fc1844-fd61-4726-9c87-63e4484ae300}">
<sh:task id="{b3fc1844-fd61-4726-9c87-63e4484ae300}">
<sh:name>Ouvrir le bloc-note</sh:name>
<sh:keywords>notepad;bloc-note</sh:keywords>
<sh:command>%SystemRoot%\notepad.exe</sh:command>
</sh:task>
<category id="5">
<sh:task idref="{b3fc1844-fd61-4726-9c87-63e4484ae300}" />
</category>
</application>
</applications>
Enregistrez ce fichier au format ".xml" sous : %SystemRoot%\System32\tsk1.xml
Sélectionnez cette clé de registre :
- Code:
-
HKEY_CLASSES_ROOT\CLSID\{b3fc1844-fd61-4726-9c87-63e4484ae300}
Créez une valeur chaine (Nouveau\valeur chaine) :
- Code:
-
System.Software.TasksFileUrl
Saisissez comme donnée de la valeur le chemin du fichier enregistré ci-dessus ("tsk1.xml") :
- Code:
-
%SystemRoot%\System32\tsk1.xml
Ouvrez votre panneau de config. La tâche "ouvrir le bloc-note" apparait dans la rubrique "Editeur de registre". Vous pouvez cliquer dessus pour lancer le bloc-note.
Source :
http://msdn.microsoft.com/en-us/library/bb757044.aspx et "Le registre Windows 7 des éditions ENI".
Ce sujet m'a permis de faire l'étude du développement de "My 7 Control Panel Applet".[/align]