最近在WIN7下开发的P2P程序,在代码里更换了新图标,客户端运行的托盘程序在退出时弹messagebox时任务栏上仍然显示的是老版本的图标(托盘上的图标是正常的)。
WIN7下使用没有那么严重,一般情况下,如果遇到这个问题,删除这个托盘程序的目录下所有文件,然后重启系统,重新加载运行后该问题消失。
但在WINXP和WIN8下就很顽固了,采用前述方法问题依旧(WIN8与WINXP有一点区别,直接在程序当前目录下双击运行,弹消息窗时显示老版图标的只有WIN8,WINXP却是显示的新版图标)。于是想到2套解决方案:
1,尝试在系统下新建用户帐号作为walk around,问题解决,说明系统有很大的因素。
2,也曾考虑分别在WIN8和WINXP下搭建开发环境并build,一来effort不够,二来并不一定会奏效。
后来发现这个WINDOWS很让人讨厌的BUG,比DLL HECK都难受!下面是一些解决方案:
- Install Microsoft's TweakUI and run the option to rebuild icons(此链接已经失效).
- Or increase t