1. 图标存储在哪个文件

2. 图标在该DLL下的数值和大小(替换的图标必须和原图标大小保持一致)
查看和修改托盘图标可以使用软件restorator2007,它可以直接读取并修改dll文件,并且在保存的时候自动备份源文件,操作十分方便,我就是用它改的。
在一个DLL文件里,所有资源的编号(也就是数值)是唯一的.
-点击某个资源,可以在右侧看到属性。这里我们看到的是这个编号是357的图标的大小和预览图.
需要注意的是,在以上文件夹下有个隐藏文件夹,这个文件夹的目录是"系统根目录windowssystem32dllcache"里面有所有系统DLL的备份。该文件夹的功能是一旦发现DLL被更改立即恢复这个被更改的DLL。所以,在修改托盘图标的时候记得要检查这个隐藏文件夹里有没有备份,如果有,可以用重命名的方法解决自动备份问题。
下面举个例子:
例如我要更改默认输入法图标,系统文件夹下该图标存储的位置是:系统根目录windowssystem32 msctf.dll
假设我们已经有一个用来替换的图标,并且已经安装过restorator2007.
1.首先进入系统根目录windowssystem32 找到msctf.dll文件。
2.右键点用restorator打开
3.打开左侧资源树状图,找到图标文件夹
-这里就是为什么我要事先知道要替换的图标的数值(就是编号)的理由,因为有的时候图标看起来都差不多,但有的是显示在托盘有的是显示在菜单,而光从界面上看是无法知道图片即将显示在哪里的.一般在我们下载这类资源的时候,发布者都会说明图标的数值,以便于别人替换。这里我要替换的是编号为357的图标,它是默认输入法的托盘图标。当图标被替换后,会在文件左下角出现一个小箭头,表示有更改。
4.替换要更改的图标(直接复制黏贴,可以从一个DLL的文件里的图标直接黏贴到另一个DLL的图标上,也可以直接从文件夹下的图标复制黏贴到DLL里的图标上。注意替换的图标大小要与源文件图标大小一致)
5.进入“系统根目录windowssystem32 dllcache”检查是否有同名文件,如果有则将文件备份至另外文件夹或直接重命名。(第五第六步顺序不要错,如果先更改了system32里的dll再更改dllcache的备份结果是徒劳的。记得dllcache里的文件很重要,我强烈建议在更名前备份。还有,不要备份在这个文件夹。)
6.保存刚才更改的DLL文件。(此时这软件会自动备份原来的文件,并储存在原来的目录,即windowssystem32)
当然,第5步也可以放在第一步做。
附加效果图一张:
(改过的托盘图标从左至右依次是:默认输入法,电源,音量,网络连接)最后那个雪花状的是另外一个更改托盘图标的小软件,这个软件只能暂时更改,不能永久更改。并且一旦关闭软件,托盘也就恢复原样了。我用这个软件是为了隐藏不需要显示的托盘图标。