mit*_*tch 29 windows registry file-extension file-type
我正在尝试以编程方式检查文件扩展名(例如.jnlp文件)的文件关联.我一直在读
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\JNLPFile\Shell\Open\Command
Run Code Online (Sandbox Code Playgroud)
是要检查的注册表项.但是,如果通过Windows资源管理器更改关联:
打开方式>选择程序>(始终使用所选程序)
此注册表项中的更改完全没有反映出来.这些信息还存储在哪里?
Mic*_*eyn 26
看看:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\
Run Code Online (Sandbox Code Playgroud)
并且子键是您重新分配的扩展名.在那之下将有UserChoice和OpenWithList子键,它们将包含你的重新定义.
您可能还想阅读http://support.microsoft.com/kb/950505,其中谈到了您的问题.
这是一个由两部分组成的查找.
首先,查找HKEY_CLASSES_ROOT\[file_extension]的默认值.对于您的扩展名.jnlp,值为"JNLPFile".我们称之为[file_descriptor].
现在,您可以查找HKEY_CLASSES_ROOT\[file_descriptor]\Shell\[action]\command的默认值(其中[action]是您感兴趣的shell操作,例如:打开,打印,编辑等).