Toutes les informations d'association d'extension de fichier sont stockées dans le registre. Et si vous faites un peu de navigation, il n'est pas très difficile de comprendre comment les choses fonctionnent. Pour les associations à l'échelle de la machine, tout se passe à la racine de HKEY_CLASSES_ROOT . L'édition manuelle de ces éléments vous donne un pouvoir ultime sur vos extensions de fichiers (bien que fastidieux). Créez simplement une sauvegarde au cas où vous bousilleriez les choses et voudriez revenir.
Chaque association de fichiers a une sous-clé appelée .xyz où xyz est l'extension de votre fichier. La valeur (par défaut) de cette clé est définie sur une chaîne arbitraire. La plupart des applications qui enregistrent des extensions de fichier le définissent sur quelque chose de lisible par l'homme. Par exemple, .pdf sur mon système est défini sur FoxitReader.Document . Il existe de nombreuses autres valeurs dans cette clé, mais rien n'est obligatoire à l'exception de la valeur (par défaut).
Pour tout ce que cette valeur (par défaut) est définie, il y aura une sous-clé correspondante avec le même nom également à la racine de HKEY_CLASSES_ROOT. La valeur (par défaut) de cette clé est essentiellement le "nom convivial" du type de fichier. Cette clé peut également avoir de nombreuses sous-clés, mais les seules qui nous intéressent sont DefaultIcon et Shell .
DefaultIcon comme vous l'avez probablement deviné contrôle l'icône de ce type de fichier. La valeur (par défaut) de cette clé doit être définie sur le chemin du fichier d'icônes. Ou si l'icône se trouve dans un fichier .exe, définissez-la sur le chemin d'accès du fichier .exe et incluez une virgule et l'index des icônes à la fin du chemin. Par exemple, FoxitReader.Document DefaultIcon est défini sur
C:\PROGRA~1\FOXITS~1\FOXITR~1\FOXITR~1.EXE,1
Shell est l'endroit où vous configurez toutes les "actions" pour ce type de fichier. Pour chaque action que vous souhaitez définir, créez une sous-clé appelée comme vous voulez nommer l'action. La plupart des types ont au moins une action appelée open . Dans la sous-clé de cette nouvelle action, créez une sous-clé appelée Commande . La valeur (par défaut) de cette touche de commande est essentiellement la ligne de commande qui s'exécute lorsque cette action est cliquée / exécutée. Par exemple, la commande open sur un FoxitReader.Document est
"C:\PROGRA~1\FOXITS~1\FOXITR~1\FOXITR~1.EXE" "%1"
L' argument "% 1" est défini sur le chemin du fichier à partir duquel vous avez exécuté l'action.
Si vous n'avez défini qu'une seule action pour un type de fichier donné, je pense que ce sera l'action par défaut qui est exécutée si vous double-cliquez sur le fichier. S'il existe plusieurs actions possibles, vous pouvez définir celle qui sera la valeur par défaut en modifiant la valeur (par défaut) de la clé Shell . Réglez-le simplement sur le nom de l'action que vous souhaitez utiliser par défaut.
Cela dit, il n'est pas très efficace de tout faire à partir de zéro. Il est probablement plus facile d'utiliser les outils intégrés pour obtenir la majeure partie du chemin, puis de modifier manuellement les choses que les outils ne vous permettent pas de faire. Je devrais également mentionner que toutes ces informations sont basées sur XP, mais je suis presque certain que rien n'a changé pour Vista ou Win7.