当我手动替换图标时(即不从资源管理器中的“文件夹选项”窗口),图标不会更新.例如,如果我执行此批处理代码:
REG ADD HKCR\testfile\DefaultIcon /ve /d "C:\test.ico,0" /f
图标显示在“文件夹选项”的列表中应该显示,但图标不会在桌面或资源管理器中更新.
如果我只是点击任何文件类型的“更改图标”按钮并退出“文件夹选项”窗口,则会更新图标.但据我所知,这不能通过批处理或VBS完成.
重新启动explorer.exe可以正常工作,但如果我这样做,任务栏中的应用程序选项卡由于某种原因变得有问题(例如:当应用程序最大化时,我不能只是左键单击任务栏中的选项卡以最小化它 – 我必须直接点击它并点击最小化…).更不用说,如果我这样做,所有打开的资源管理器窗口都将关闭,这有点麻烦.
我还有一个TuneUp Utilities的副本,它有一个重新加载图标缓存的选项,这确实像预期的那样工作.但是再一次,我无法通过批处理或VBS访问此工具.它不会重新启动explorer.exe或删除任何文件(如某些解决方案).我对此持肯定态度,因为我的操作系统驱动器上没有iconcache.db文件.
我也尝试通过VBS添加注册表项,但这没有帮助.
欢迎任何批处理或VBScript解决方案!
通过关联文件,系统刷新图标,所以我的简单解决方案就是这样:
ASSOC .anyextension=anytype ASSOC .anyextension=
第二行取消了扩展名.