Windows 7上的桌面快捷方式图标错误(Inno Setup)

时间:2010-12-09 16:18:54

标签: windows-7 icons inno-setup desktop-shortcut

我已经使用Inno Setup创建了一个安装程序。用于桌面快捷方式和开始菜单的图标嵌入在应用程序可执行文件中。

最初创建安装程序时,我没有设计团队的最终产品图标。在完成安装程序时,我使用了临时图标。

在我更改最后一个图标之前,一切正常。现在桌面快捷方式和开始菜单图标始终显示旧图标,即使图标正确无处不在。

这是脚本的Icon声明部分。

[Icons]
Name: {group}\{#MyAppName}; Filename: {app}\{#MyAppExeName}; WorkingDir: {app}
Name: {group}\{cm:UninstallProgram,{#MyAppName}}; Filename: {uninstallexe}; IconFilename: {app}\Icons\stop.ico
Name: {commondesktop}\{#MyAppVersionName}; Filename: {app}\{#MyAppExeName}; Tasks: desktopicon; WorkingDir: {app}

这是我尝试过的:(这是一个Windows 7系统)

如果我查看快捷方式属性,并选择“更改图标”,我会看到正确的图标。重新选择它没有任何效果。我也尝试过选择一个不相关的图标,然后重新选择正确的...仍然显示旧图标。

我已按照建议删除IconCache.db并重新启动机器,但这也没有效果。

世界上哪里有旧图标?安装程序中没有任何地方。

想点什么?

2 个答案:

答案 0 :(得分:31)

这似乎确实与IconCache.db文件有关。我只能猜测某些事情没有以正确的顺序完成(尽管我多次尝试不同的程序)。

以下是我手动执行重置的方法:

  • 点击开始按钮>按住 Ctrl + Shift &右键单击“开始”菜单中的空白区域。
  • 选择“退出资源管理器”。
  • 按住 Ctrl + Shift + Esc 键以打开任务管理器。
  • 选择“文件”> “新任务”。
  • 键入:cmd(并按 Enter )。这将打开命令提示符。
  • 输入:cd /d %userprofile%\AppData\Local(并按 Enter
  • 输入:attrib –h IconCache.db(并按 Enter
  • 输入:del IconCache.db(并按 Enter
  • 输入:start explorer(并按 Enter

现在一切都呈现出来。

答案 1 :(得分:10)

正如swirlywonder的回答一样,这个批处理脚本应该自动完成这个过程:

<强>重建图标-cache.bat

@echo off
taskkill /IM explorer.exe /F
cd /d %userprofile%\AppData\Local
del IconCache.db /a
start explorer.exe