10

我正在尝试自定义在我的 Delphi 应用程序的 Windows 资源管理器和桌面快捷方式中显示的图标。

在 Delphi 7 IDE 中,我已经在 Project Options 对话框的 Application 选项卡中加载了所需的图标。它将我想要的图标显示为图形。

我认为没有必要,但我也将我的图标设置为 TMainForm Icon 属性。

但是,生成的 EXE 仍显示默认的 D7 图标。我错过了什么?

4

3 回答 3

5

经过更多的狩猎,我找到了它。我通过从另一个文件夹复制现有项目来创建一个新项目。我忘记更改 DPR 文件顶部的程序名称以匹配新项目的名称。不知何故,如果在那里使用了错误的名称,它会阻止图标在生成的 EXE 文件中被更改......

于 2009-05-30T20:34:21.303 回答
3

当您将图标分配给应用程序时,图标将嵌入到与程序名称(在 .dpr 文件的第一行中提到的名称)名称相同的 .res 文件中。当您更改 .dpr 文件中的程序名称时,delphi 会使用新的程序名称创建一个新的 .res 文件,并在新的 res 文件中查找图标资源并没有找到,因此使用默认图标(或矩形白色盒子)。旧的带有图标资源的 res 文件将不再使用。总之,如果您更改程序名称,您将不得不重新分配图标。

于 2011-10-08T15:10:16.303 回答
2

也许需要删除图标缓存。关于这个问题有很多页面,这个链接可能有用:http ://smallvoid.com/article/windows-icon-cache.html

于 2009-05-30T20:33:25.517 回答