我有一个带有 16x16 图标的 Delphi 6 应用程序。最近我制作了它的 64x64 版本并重新编译了应用程序。
当我运行该应用程序时,此高分辨率图标显示在 Windows 7 Superbar 和任务管理器中。它显示在 .exe 文件属性中。
但是当我在桌面上创建快捷方式时,它会显示一个拉伸(stretch)的低分辨率图标 (16x16)。当我转到此快捷方式的属性时 - 它显示了 64x64 版本。要在快捷方式上显示高分辨率图标,我必须转到快捷方式图标的属性,单击唯一可用的高分辨率图标,单击“确定”和“应用”,然后执行此序列两次。
如果我删除快捷方式并尝试再次创建它,它会再次显示 16x16 图标,直到我分配该图标两次。
我专门查看了 .res 文件 - 只有一个图标。
我已清除图标缓存,注销并登录。行为仍然没有变化。 这种行为可以在其他装有 Windows 7 的计算机上重现。
我不知道发生了什么。是从高分辨率制作低分辨率版本还是已将以前的版本缓存在某处?
最佳答案
打开命令提示符窗口并输入:
taskkill /IM explorer.exe /F
DEL "%localappdata%\IconCache.db" /A
shutdown /r /f /t 00
这将重建图标缓存,这很可能是问题的根源。请注意,最后一个命令将关闭并重新启动计算机,因此请务必在执行命令之前保存所有数据。
关于delphi - 高分辨率 exe 图标导致 Windows 桌面快捷方式上的低分辨率图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14990152/