这是我很久之前的一篇博文, 发在sina上面, 居然给整成私密的了. 我发现这篇挺实用的, 对于有强迫症的我来说, 经常都要对其进行翻阅, 况且它对win7和win10都能适用, 故而重新发在这里了, 希望能帮到别人.
声明: 由于本文涉及到注册表的操作,有一定风险,所以在操作之前建议备份注册表文件。(不过我经常用, 似乎也没什么风险)
为了便于文件的查找, 我一般会修改.c和.h文件类型的默认显示图标, 最终修改效果如下:
一般来说,我只要修改c_auto_file文件就可以了(详情可参照我的这篇博文《WINDOWS 中文件类型图标的设置》)。但是有时候安装了其他软件后,会将你注册表的相关内容修改掉,使其不再引用c_uto_file的内容,那么你所自定义的图标也就不能起作用了。当这种情况发生时,我试了很多方法,可都不起作用。但今天终于让我找到了一条解决的办法。下面是所用的步骤(以修改.c文件为例):
1、首先找到HKEY_CLASSES_ROOT/.c目录,将其下的默认字符串值更改为c_auto_file,然后将其子项全部删除。修改结果如下图所示:
2、在HKEY_CLASSES_ROOT目录下新建子项c_auto_file。c_auto_file会包含两个子项DefaultIcon和shell。其中DefaultIcon用来设定类型的图标,shell下面则可以设定打开c文件的应用程序。由于手动建立的项目较多,所以可以采用先用注册表导入的方式建立基本内容,然后再手动修改的方法。
首先将下面的内容复制进记事本,然后保存为1.reg文件,双击运行即可在注册表中建立c_auto_file的基本内容。
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\c_auto_file]
@=""
[HKEY_CLASSES_ROOT\c_auto_file\DefaultIcon]
@=hex(2):44,00,3a,00,5c,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,20,00,46,\
00,69,00,6c,00,65,00,73,00,5c,00,45,00,64,00,69,00,74,00,50,00,6c,00,75,00,\
73,00,5c,00,65,00,64,00,69,00,74,00,70,00,6c,00,75,00,73,00,2e,00,65,00,78,\
00,65,00,2c,00,30,00,00,00
[HKEY_CLASSES_ROOT\c_auto_file\shell]
[HKEY_CLASSES_ROOT\c_auto_file\shell\open]
[HKEY_CLASSES_ROOT\c_auto_file\shell\open\command]
@="\"D:\\Program Files\\EditPlus\\editplus.exe\" \"%1\""
导入完成后,可进入HKEY_CLASSES_ROOT/c_auto_file进行修改。一处是修改DefaultIcon下面的图标内容,可参看之前的博文介绍;另一处是修改打开文件的命令,根据样例进行修改即可。结果如下图所示:
3、进入
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts.c 目录,将其子项全部删除。结果如下图所示:
4、关闭注册表,然后任意右键打开一个c文件,此时选择在第二步时设定的软件打开。图标即可按要求恢复了。
此时再打开注册表
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts.c目录,发现内容已经重建了,如下图所示: