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?
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.
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.).
Sur:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.jnlp\OpenWithList
Astuce: Édition> Rechercher est assez pratique dans ces situations. :)