web-dev-qa-db-fra.com

Où Windows stocke-t-il ses paramètres "Ouvrir avec"?

J'essaie de vérifier par programme les associations de fichiers par l'extension de fichier (par exemple .jnlp des dossiers). Je continue de lire ça

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\JNLPFile\Shell\Open\Command

est la clé de Registre à vérifier. Cependant, si vous modifiez l'association via l'Explorateur Windows:

Ouvrir avec> Choisir un programme> (Toujours utiliser le programme sélectionné)

le changement n'est pas du tout reflété dans cette clé de Registre. Où ces informations sont-elles stockées ailleurs?

32
mitch

Jetez un œil à:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\

et la sous-clé de cela est l'extension que vous avez réaffectée. En dessous, il y aura les sous-clés UserChoice et OpenWithList qui contiendront votre redéfinition.

Vous pouvez également lire http://support.Microsoft.com/kb/950505 qui parle de votre problème.

25
Michael Goldshteyn

Il s'agit d'une recherche en deux parties.

Tout d'abord, vous recherchez la valeur par défaut de HKEY_CLASSES_ROOT\[file_extension]. Pour vos extensions, .jnlp, la valeur est "JNLPFile". Appelons cela le [file_descriptor].

Vous pouvez maintenant rechercher la valeur par défaut de la commande HKEY_CLASSES_ROOT\[file_descriptor]\Shell\[action]\(où [action] est l'action Shell qui vous intéresse, par exemple: Ouvrir, Imprimer, Modifier, etc.).

5
Chris Judge

Sur:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.jnlp\OpenWithList

Astuce: Édition> Rechercher est assez pratique dans ces situations. :)

3
Ruel