批处理文件 – 以编程方式更改和刷新图标(无需重新启动)

当我手动替换图标时(即不从资源管理器中的“文件夹选项”窗口),图标不会更新.例如,如果我执行此批处理代码:

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=

第二行取消了扩展名.

dawei

【声明】:唐山站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。