方法一 删除 IconCache.db 文件
进入 C:\Users\用户名\appdata\local
目录,直接删除 IconCache.db 文件,重启电脑。
需要注意的是,这一步中 appdata 文件夹和 IconCache.db 文件都是隐藏的系统文件,需要手动输入地址或者显示隐藏文件。
bat文件双击清理
cs
:: 终止 Windows Explorer 进程,用于重新加载桌面和任务栏
taskkill /f /im explorer.exe
:: 取消设置图标缓存文件的隐藏属性和系统属性
attrib -h -i %userprofile%\AppData\Local\IconCache.db
:: 删除图标缓存文件,以便系统重新生成图标缓存
del %userprofile%\AppData\Local\IconCache.db /a
:: 重新启动 Windows Explorer 进程,以使更改生效
start explorer
方法二 Windows 自带的磁盘清理工具
有时候 IconCache.db 文件会被其他软件占用,那就试试 Windows 官方提供的清理工具。
打开开始菜单,找到 Windows 管理工具 → 磁盘清理 → C 盘 → 勾选「缩略图」→ 确定。即可将图标缓存文件顺利删除。
方法三 批处理清除图标缓存数据库
如果上面两个方法都无法解决问题,那就试试更暴力的批处理吧。
这段批处理文件会删除 IconCache.db 文件,同时还清理 thumbcache.db 文件和注册表中的 IconStreams、PastIconsStream 两个值。清理速度很快,除了会重启一下资源管理器外没有副作用。
打开记事本,将下面这段代码复制到记事本中,保存为 图标缓存清理.bat
文件,双击打开即可。
cs
rem 关闭Windows外壳程序explorer
taskkill /f /im explorer.exe
rem 清理系统图标缓存数据库
attrib -h -s -r "%userprofile%\AppData\Local\IconCache.db"
del /f "%userprofile%\AppData\Local\IconCache.db"
attrib /s /d -h -s -r "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\*"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_32.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_96.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_102.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_256.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_1024.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_idx.db"
del /f "%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_sr.db"
rem 清理 系统托盘记忆的图标
echo y|reg delete "HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\CurrentVersion\TrayNotify" /v IconStreams
echo y|reg delete "HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\CurrentVersion\TrayNotify" /v PastIconsStream
rem 重启Windows外壳程序explorer
start explorer
(这段代码在网上广为流传,最初作者已经不可考。)
如果上面这三种方法还是没能解决图标问题,说明问题已经超出了「图标缓存」的范畴,需要考虑其他方面的影响(比如软件安装错误、软件图标丢失等)。