今天又处理一起与win7文件关联相关的电脑故障,循例我又来写一篇日志。
在xp的年代,文件关联的信息存在于注册表中的
HKEY_CLASSES_ROOT/.ext
HKEY_CLASSES_ROOT/filetype
(.ext代表扩展名,filetype代表文件类型名,例如txtfile,下同)
到了win7,新增了一个地方
HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Explorer/FileExts/.ext
前面的是属于文件关联的系统级设置,而新增的那个属于用户设置。右键打开方式所修改的内容就属于用户设置。
这二者所设置的实际对象是一样的,当二者不一致的时候,用户设置优先于系统设置。
用户设置具体会存于下面这个位置。
HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Explorer/FileExts/.ext/UserChoice
今天处理的这一起是人为错误为快捷方式文件(*.lnk)指定了打开方式,导致系统所有快捷方式图标变为了被错误指定的程序的图标。
并且直接导致点击快捷方式后不能打开对应的程序或其他文件,进入注册表管理器删除条目:
HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Explorer/FileExts/.lnk/UserChoice
后,重启explorer完成修复。
其实之前还有遇到过更恶劣的情况,就是为程序(*.exe)文件指定了打开方式。
结果导致注册表管理器等工具软件无法直接正常打开。
(解决方案:进系统目录改regedit.exe为regedit.com或者.scr都可以,改完后就可以打开了,修复完成再改回来)