软件吧
登录注册账号
/posts/txt-hkeyclassesroot-win-regedit
电脑必备

文件关联被改乱后,我用注册表导出对比把默认程序一个个掰回来

山城老周 93 0 16

前两天办公室一台公用机出了个怪事:双击 .txt 文件,弹出来的居然是某个看图软件,还带一堆推广页。用户说自己也纳闷,明明没动过。这种事我这些年见得太多了,多半是装某个小工具的时候,它在安装向导最后一页悄悄勾了「关联常见文件类型」,你没留神就点了下一步。

我这人做事有个习惯,动注册表之前先备份。这次也没例外,先把 HKEY_CLASSES_ROOT 底下跟关联有关的几个键导出来存一份,出问题了好对照。具体做法:Win+R 输入 regedit,定位到 HKEY_CLASSES_ROOT\.txt,看它的默认值指向哪个 ProgID,再看那个 ProgID 下面的 shell\open\command 里写的是哪个程序路径。这一层层捋下来,是谁在捣鬼基本就水落石出了。

我这里遇到的情况是,.txt 的默认值被改成了一个第三方软件的 ProgID,而系统原本应该是 txtfile。把默认值改回 txtfile,再去「设置-应用-默认应用」里确认一遍,双击就恢复正常了。听着简单,但坑在于:有些软件不只改一个扩展名,它把 .ini、.log、.csv 甚至 .bat 都一起劫持了。只改回 .txt 是不够的,得把整个 HKCR 里可疑的 ProgID 都过一遍。

我的判断依据是:正常的系统关联,ProgID 名字都对得上号,比如 txtfile、inifile、batfile,一看就懂。凡是冒出来一串乱码似的、带厂商缩写前缀的 ProgID,八成是第三方塞进来的。这时候别急着删键,先看清楚它指向的程序还在不在,程序卸载了但键还留着,那才是真麻烦,双击文件直接报错找不到程序。

还有个细节值得说。有人图省事,直接右键文件选「打开方式-始终使用此应用」,以为一劳永逸。结果呢,只是改了当前用户的那一层设置,换到别的账户登录,或者公用机换个人用,关联又乱回去。真正要彻底,得看清楚 HKCU 和 HKLM 两处的差别,公用机尤其要注意这个,不然今天你修好,明天换个人又给弄回去了。

说句掏心窝的话,软件这东西,在精不在多。装得越杂,这种偷偷改关联的事儿就越多。我自己的机器上,除了 Windows 优化大师和 Win 解压缩,其余基本都是用完就卸。少装一个来路不明的工具,就少一次给关联擦屁股。

最后抛个问题:你们遇到文件关联被劫持,是习惯手动改注册表,还是用第三方关联修复工具一把梭?我总信不过那些修复工具,怕它修着修着又给你塞点别的进去,想听听大家怎么处理的。

登录后可以为帖子点赞,但本帖内容对所有人开放阅读。

社区回应

0 Replies

还没有回应,抢一个沙发。

登录后可以回应和点赞,但本帖内容对所有人开放阅读。