En bref

Utiliser des applications différentes pour un même type de fichier selon les utilisateurs



 

Problématique

Il est souvent intéressant de pouvoir, sur une même machine, utiliser des applications différentes pour certains types de fichiers, en fonction de l’utilisateur. Ainsi, on peut vouloir, sur une serveur TSE/Citrix, que certains utilisateurs ouvrent les fichiers .doc avec le viewer Word et pour d’autres Microsoft Office. Cette procédure explique comment mettre simplement et efficacement en place les associations de fichiers par utilisateurs.

Les associations de fichiers, comment ça marche ? 

Windows s’appuie sur 3 éléments pour réaliser les associations de fichiers

  • L’extension ( ex: .doc)

  • Le type de fichiers ( ex: Word.document.8)

  • L’application (ex: c:”C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE”)

Dans la base de registre, c’est différents éléments sont liés entre eux pour permettre l’association d’une extension (.doc) à une application (ex: Word). Cela s’effectue en deux étapes:

Association d’une extension à un type de fichiers (ex: HKLM\SOFTWARE\Classes\.doc\Word.Document.8)

  • Association d’un type de fichier à une application (ex: HKLM\SOFTWARE\Classes\Word.Document.8\shell\open\command )

Ces associations peuvent être visualisées et éditées en utilisant deux utilitaires en ligne de commande: assoc et ftype

Pour l’exemple d’office:

Pour voir le type de fichiers associé à une extension:   assoc  (par exemple .doc)

clip_image001[4]

Pour voir l’application associé à un type de document:  ftype (par exemple, le type Word)

clip_image001[6]

Modifier les associations de fichiers par machines 

Il est relativement aisé de modifier les associations de fichiers avec ces outils.

L’inconvénient majeur est qu’elles sont modifiées pour tous les utilisateurs (voir ci après pour la modification par utilisateur).

Par exemple, pour associer l’ouverture des fichiers .doc avec le viewer Word au lieu de Word 2003, il suffit de modifier le type de fichier associé à l’extension .doc, en utilisant la commande assoc

En réalité, on va travailler sur l’association  extension <-> type de fichiers. Le couple type de fichiers / Application n’est pas modifié…

1ère étape: Identification du type de fichier à utiliser (Viewer)

il est nécessaire d’identifier le type de fichiers correspondant au Viewer: on utilise la commande ftype sans paramètre

clip_image001[8]

Le type de fichier créé par l’installation du viewer est Wordview.document.8

2ème Etape: Association de l’extension au nouveau type de fichiers

Syntaxe:   assoc  extension  type_de_fichiers 

  ex: assoc .doc=Wordview.document.8

clip_image001[10]

Désormais, les fichiers .doc s’ouvrent par défaut avec le Viewer Word.

Ceci doit bien sûr être étendu aux autres extensions associées à Word/Viewer

clip_image001[12]

 Modifier les associations de fichiers, par utilisateur

L’inconvénient de ftype et assoc est que ces outils ne permettent la modification des associations qu’au niveau machine et non utilisateur (dans HKLM).

Windows 2000 et 2003 permettent cependant les associations de fichiers au niveau utilisateur (http://support.microsoft.com/default.aspx?scid=kb;EN-US;q257592)

Pour modifier les associations par utilisateur, il faut travailler au niveau du registre, non plus dans HKEY_LOCAL_MACHINE, mais dans HKEY_CURRENT_USER…

En réalité, chaque utilisateur dispose de sa propre version de l’arborescence SOFTWARE\CLASSES dans HKEY_CURRENT_USER

{mosimage}

Pour personnaliser les associations il suffit donc de rajouter une clé et une valeur dans HKEY_CURRENT_USER  correspondant à l’extension  et au type de fichier à utiliser.

Si une extension est définie au niveau utilisateur et au niveau machine, c’est le paramétre définit au niveau utilisateur qui sera utilisé.

Il convient de modifier la base de registre en conséquence pour les utilisateurs concernés, par script (stratégie de groupe). par exemple, le .reg suivant associe les fichiers .doc (entre autres)  à Word.

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Classes\.doc]
@=”Word.Document.8″

[HKEY_CURRENT_USER\Software\Classes\.dot]
@=”Word.Template.8″

[HKEY_CURRENT_USER\Software\Classes\.dochtml]
@=”wordhtmlfile”

[HKEY_CURRENT_USER\Software\Classes\.docmhtml]
@=”wordmhtmlfile”

[HKEY_CURRENT_USER\Software\Classes\.docxml]
@=”wordxmlfile”

[HKEY_CURRENT_USER\Software\Classes\.dothtml]
@=”wordhtmltemplate”

[HKEY_CURRENT_USER\Software\Classes\.rtf]
@=”Word.RTF.8″

[HKEY_CURRENT_USER\Software\Classes\.wbk]
@=”Word.Backup.8″

 

Conclusions

On peut avec cette procédure:

  • Fixer une association par défaut sur la machine ( .doc -> viewer)

  • Fixer une association par groupe d’utilisateur ( .doc -> Word 2003 pour les membres d’un groupe particulier)

Réf: http://support.microsoft.com/kb/257592/en-us

Articles relatifs

Commentaires

Aucun commentaire pour l'article “Utiliser des applications différentes pour un même type de fichier selon les utilisateurs”

Ajouter un commentaire

Important: Un modérateur est susceptible de supprimer, préalablement à sa diffusion, toute contribution qui ne serait pas en relation avec le thème de discussion abordé, la ligne éditoriale du site, ou qui serait contraire à la loi. Vous disposez d'un droit d'accès, de modification, de rectification et de suppression des données qui vous concernent. Vous pouvez, à tout moment, demander que vos contributions à cet espace de discussion soient supprimées.