1 – Introduction
Avant de commencer l’explication des outils, je vais vous expliquer rapidement quelques bases sur la manière dont Windows gère les fichiers. (Vous trouverez plus de détails sur en cet autre site). L’une des propriétés les plus basiques d’un fichier est son type. Chaque type de fichier est associé à un ensemble d’actions qui peuvent lui être appliquées. Le logiciel qui est sélectionné pour effectuer ces actions avec les fichiers d’un certain type est dit « associé » au type de fichier. Il peut y avoir plusieurs actions possibles et différents logiciels peuvent être utilisés pour chaque action. Cet ensemble de logiciels constituent les associations de programmes pour un type de fichier donné. L’extension d’un fichier indique à l’ordinateur de quel type est le fichier et ce qui doit être fait quand le fichier est ouvert, double-cliqué ou invoqué d’une manière ou d’une autre. Microsoft utilise également le mot « associé » pour désigner l’association entre un type de fichier particulier et une extension. Toutes ces informations sont stockées dans la base de registre et peuvent être modifiées de plusieurs façons. Les méthodes utilisant l’interface graphique sont décrites sur en un autre site. Nous allons voir ici comment faire cela en ligne de commande.
2 – Gestion des types de fichiers et des extensions avec la commande assoc
Cet outil est très utile pour gérer les relations ou associations entre les extensions et les types de fichiers. La syntaxe est :
assoc [.ext[=[Type du fichier]]]
Si vous saisissez la commande « assoc » seule, vous obtiendrez la liste des types de fichiers associés aux extensions enregistrées sur le système. La liste peut être longue donc il vaut mieux rediriger la sortie vers un fichier ou utiliser la commande « more » pour afficher une page après l’autre :
assoc > liste.txt
ou
assoc | more
Par exemple, pour afficher le type de fichier associé à l’extension .txt, tapez la commande suivante :
assoc .txt
Pour supprimer l’association entre un type de fichier et une extension .xyz (à utiliser avec précaution), entrez :
assoc .xyz=
Une autre utilisation est d’associer une extension donnée avec un certain type de fichier. Par exemple, pour associer l’extension .log avec le type txtfile, utilisez
assoc .log=txtfile
Remarquez que plusieurs extensions peuvent être associées à un type de fichier. Par exemple, le type de fichier « jpegfile » est associé aux deux extensions .jpg et .jpeg. Sachez aussi qu’il est possible de créer sa propre extension de fichier et de l’associer à un type de fichier.
Pour une référence sur assoc consultez en ceci ou le centre d’aide et de support de Windows. Vous pouvez aussi utiliser la commande :
assoc /?
3 – Gérer les types de fichier et les associations de programmes avec la commande ftype
Comme je l’ai mentionné précédemment, à chaque type de fichier est associé un ensemble d’opérations et de logiciels correspondants. En particulier, tous les types de fichiers actifs possèdent une action nommée « Open » qui est l’action par défaut. Il s’agit de l’action qui est appelé quand vous double-cliquez sur un fichier possédant l’extension associée au type de fichier. Il peut y avoir d’autres actions (listées dans le menu contextuel) mais ftype gère uniquement « Open ». L’action Open est définie par une chaine de caractère qui indique le chemin complet vers le fichier exécutable qui va gérer le fichier et tous les paramètres qui doivent être passés à cet exécutable. La syntaxe de ftype est :
ftype [typeFichier[=[commandeOuverture]]]
En utilisant la commande ftype seule, vous obtiendrez la liste des types ayant une commande d’ouverture. Celle-ci sera également affichée. Cette liste peut être très longue donc il vaut mieux rediriger la sortie vers un fichier ou utiliser un « pipe » vers la commande « more ». Cette liste peut être particulièrement utile pour savoir quels sont les programmes utilisés pour ouvrir les différents fichiers.
Si un type de fichier est spécifié, alors la commande pour ce type sera affichée. Prenons par exemple le type de fichier « txtfile » (fichier texte), si vous saisissez :
ftype txtfile
vous obtiendrez en retour
txtfile=%SystemRoot%system32NOTEPAD.EXE %1
Cela indique que le fichier exécutable qui ouvre les fichiers textes est notepad.exe situé dans le répertoire Windowssystem32 (La variable d’environment %SystemRoot% permet d’indiquer le répertoire de Windows). Remarquez la présence du paramètre %1. Ce paramêtre est nécessaire car la commande d’ouverture a besoin du nom du fichier à ouvrir. Le paramètre %1 représente le nom du fichier. Cette commande peut être utile quand vous voulez savoir quel programme ouvre un type de fichier particulier.
Si vous désirez changer la commande d’ouverture pour utiliser Wordpad à la place du bloc-notes, la commande sera :
ftype txtfile= »G:Program FilesWindows NTAccessorieswordpad.exe » « %1 »
(l’emplacement de Wordpad peut être différent d’un ordinateur à un autre. Il s’agit ici d’un simple exemple d’illustration). Remarquez que j’utilise des guillemets pour entourer le chemin car il contient des espaces. Bien qu’il soit plus facile de changer les associations de programme par l’explorateur Windows via Outils-Options des dossiers , la méthode utilisant la ligne de commande que je viens de vous décrire peut également être utile, en particulier dans les fichiers batch.