Windows 系统的图标缓存清理脚本

Windows系统中,图标缓存和缩略图缓存有时会因为种种原因出现问题,导致桌面或文件资源管理器中的图标无法正确显示,比如文件夹图标有黑底。
文件夹图标有黑底
我们可以编写一个批处理脚本,关闭 Windows 外壳程序 explorer.exe,清理图标缓存,并删除系统托盘的图标记忆。

REM bat代码开始-www.epinv.com
REM 更新:增加清除系统托盘旧图标
REM 关闭Windows外壳程序explorer
taskkill /f /im explorer.exe
REM 清理系统图标缓存数据库
attrib -h -s -r "%userprofile%AppDataLocalIconCache.db"
del /f "%userprofile%AppDataLocalIconCache.db"
attrib /s /d -h -s -r "%userprofile%AppDataLocalMicrosoftWindowsExplorer*"
del /f "%userprofile%AppDataLocalMicrosoftWindowsExplorerthumbcache_32.db"
del /f "%userprofile%AppDataLocalMicrosoftWindowsExplorerthumbcache_96.db"
del /f "%userprofile%AppDataLocalMicrosoftWindowsExplorerthumbcache_102.db"
del /f "%userprofile%AppDataLocalMicrosoftWindowsExplorerthumbcache_256.db"
del /f "%userprofile%AppDataLocalMicrosoftWindowsExplorerthumbcache_1024.db"
del /f "%userprofile%AppDataLocalMicrosoftWindowsExplorerthumbcache_idx.db"
del /f "%userprofile%AppDataLocalMicrosoftWindowsExplorerthumbcache_sr.db"
REM 清理 系统托盘记忆的图标
echo y|reg delete "HKEY_CLASSES_ROOTLocal SettingsSoftwareMicrosoftWindowsCurrentVersionTrayNotify" /v IconStreams
echo y|reg delete "HKEY_CLASSES_ROOTLocal SettingsSoftwareMicrosoftWindowsCurrentVersionTrayNotify" /v PastIconsStream
REM 重启Windows外壳程序explorer.exe
start explorer
REM 批处理代码结束
  • 新建一个文本文件,把上面的代码复制进去。
  • 保存时,把文件扩展名从 .txt 改为 .bat
  • 双击运行这个 .bat 文件即可
    脚本不是我写的,但是脚本里的域名似乎已经停止解析,不过脚本很实用,在此分享给大家。