Day 3833 某个应用导致.***文件的默认应用设置出现问题,因此已将它重置为……

最近将家里的台式机系统更新成了Windows 10,在这之前因为听说Windows 10的小bug不断,踌躇了很久,终于还是觉得为自己在单位维修电脑多增加一点经验好,于是做了一次干净安装。

用了一周多,小问题是不少,好处也不少,最明显的是开关机速度、待机/恢复速度大幅提升,应用程序运行效率也有明显提高,这是题外话。

但是有一个颇为恼人的问题:系统总是无法固定某个扩展名的打开方式,有时甚至不知道做了什么操作,就会弹出这样一个提示:

经过上网搜寻,这个问题应该是由KB3135173这个补丁导致的,主要原因是似乎是Windows 8起引入的appx应用在设置文件关联时,与以往的exe方式有冲突所致,详细的我也不是很清楚。要彻底解决这个问题,只能等程序开发厂商将程序设置关联的方法修改为Windows 10的风格,但是那些不再更新的怎么办?

解决方法有二:一种是用特殊手段卸载掉被“滚回”的系统APPX应用,但是鉴于卸载的是系统应用,估计会引起一些问题;另一种方法是为对应的应用添加NoOpenWith键值,以避免该应用重新获得文件关联,如此即可重新指定某扩展名的文件关联信息。

先来直接看解决方法:下载这个文件,运行其中的w10_stop_reset-fileasso.reg导入注册表(或将下面的内容复制保存为.reg文件并导入),即可解决一些自带应用抢夺文件关联的问题(转载自WinHelpOnline):

Windows Registry Editor Version 5.00

;Description: Prevents Windows 10 from resetting the file associations
;… by setting NoOpenWith registry value for all the modern apps.
;Created on Feb 13 2016 by Ramesh Srinivasan
;The Winhelponline Blog
;Tested in Windows 10 Build 10586
;http://www.winhelponline.com/blog

;——————-
;Microsoft.3DBuilder
;——————-
;File Types: .stl, .3mf, .obj, .wrl, .ply, .fbx, .3ds, .dae, .dxf, .bmp
;… .jpg, .png, .tga

[HKEY_CURRENT_USER\SOFTWARE\Classes\AppXvhc4p7vz4b485xfp46hhk3fq3grkdgjg]
“NoOpenWith”=””

;——————-
;Microsoft Edge
;——————-
;File Types: .htm, .html
[HKEY_CURRENT_USER\SOFTWARE\Classes\AppX4hxtad77fbk3jkkeerkrm0ze94wjf3s9]
“NoOpenWith”=””

;File Types: .pdf
[HKEY_CURRENT_USER\SOFTWARE\Classes\AppXd4nrz8ff68srnhf9t5a8sbjyar1cr723]
“NoOpenWith”=””

;File Types: .svg
[HKEY_CURRENT_USER\SOFTWARE\Classes\AppXde74bfzw9j31bzhcvsrxsyjnhhbq66cs]
“NoOpenWith”=””

;File Types: .xml
[HKEY_CURRENT_USER\SOFTWARE\Classes\AppXcc58vyzkbjbs4ky0mxrmxf8278rk9b3t]
“NoOpenWith”=””

;——————-
;Microsoft Photos
;——————-
;File Types: .3g2,.3gp, .3gp2, .3gpp, .asf, .avi, .m2t, .m2ts, .m4v, .mkv
;… .mov, .mp4, mp4v, .mts, .tif, .tiff, .wmv
[HKEY_CURRENT_USER\SOFTWARE\Classes\AppXk0g4vb8gvt7b93tg50ybcy892pge6jmt]
“NoOpenWith”=””

;File Types: Most Image File Types
[HKEY_CURRENT_USER\SOFTWARE\Classes\AppX43hnxtbyyps62jhe9sqpdzxn1790zetc]
“NoOpenWith”=””

;File Types: .raw, .rwl, .rw2 and others
[HKEY_CURRENT_USER\SOFTWARE\Classes\AppX9rkaq77s0jzh1tyccadx9ghba15r6t3h]
“NoOpenWith”=””

;——————-
; Zune Music
;——————-
;File Types: .aac, .adt, .adts ,.amr, .flac, .m3u, .m4a, .m4r, .mp3, .mpa
;.. .wav, .wma, .wpl, .zpl
[HKEY_CURRENT_USER\SOFTWARE\Classes\AppXqj98qxeaynz6dv4459ayz6bnqxbyaqcs]
“NoOpenWith”=””

;——————-
; Zune Video
;——————-
;File Types: .3g2,.3gp, .3gpp, .avi, .divx, .m2t, .m2ts, .m4v, .mkv, .mod
;… .mov, .mp4, mp4v, .mpe, .mpeg, .mpg, .mpv2, .mts, .tod, .ts
;… .tts, .wm, .wmv, .xvid
[HKEY_CURRENT_USER\SOFTWARE\Classes\AppX6eg8h5sxqq90pv53845wmnbewywdqq5h]
“NoOpenWith”=””

要撤销操作,运行压缩包中的undo.reg即可。

其次,来看一下问题的解决思路(转载自WinZIP KB):

要解决这个问题,首先要在注册表中以下位置找到抢夺文件关联的“应用”的ID。

HKEY_CURRENT_USER\SOFTWARE\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppModel\Repository\Packages

例如:.pdf的应用被Microsoft Edge抢走了,那么展开以下分支:

Microsoft.MicrosoftEdge_25.10586.0.0_neutral__8wekyb3d8bbwe

继续向下展开,直到找到 Capabilities\FileAssociations 分支,在右侧找到对应的扩展名,并找到对应的Class ID:

本例中,.pdf的AppX Class ID为:AppXd4nrz8ff68srnhf9t5a8sbjyar1cr723

接下来打开 HKEY_CURRENT_USER\SOFTWARE\Classes,转到上面找到的Class ID分支,然后在此分支建立字符串值NoOpenWith,键值为空。

退出注册表,如此该应用就不会出现在“打开方式”中了,也就可以避免“滚回”到该应用了。

最后,简单解释一下NoOpenWith:该键值的用法是:字符串型,键值为空。当一个应用程序在 HKEY_CLASSES_ROOT\Applications 中注册了分支后,就会出现在“打开方式”的列表中,不论该程序是否自行注册过可以处理该文件类型。当该应用程序的分支下包含 NoOpenWith 时,将不再自动出现在“打开方式”的列表中。对于Windows 8 以后加入的AppX应用,原理是一样的,只是位置变化了一下。

注:所有评论将在审核通过后显示,请不要在评论内容的任何位置出现链接,否则您的评论将被自动移入回收站,且永远不会被复审。

All comments will be available after being manually reviewed, please do not include any links anywhere in your comment, otherwise your comment will be automatically deleted and are not eligible for review.

1 条评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注