2010-11-11 16 views
1

我有一个MFC对话框应用程序。我想替换应用程序的exe图标。MFC - 替换默认应用程序图标

  1. 我打开默认的MFC图标如。使用Axialis IconWorkshop的res文件夹中的app.ico。
  2. 替换图标中的所有图像。
  3. 将其保存到appA.ico。
  4. 然后我将图标IDR_MAINFRAME的Filename属性更改为res \ appA.ico。
  5. Visual Studio图标编辑器显示正确的图像。

但是当我构建应用程序时,与app.exe关联的图标仍显示MFC默认图标。

出了什么问题?

+1

尝试重建项目(Build> Rebuild Project)。有时候新资源没有正确识别。 – casablanca 2010-11-11 02:01:30

回答

0

其中一个Visual Studio文件缓存一些资源;不幸的是,我现在不记得哪一个。用奇怪的扩展名将这些文件重命名为其他内容并尝试重建。

2

在这种情况下,Visual Studio设计是一个小马车(或,否则,由设计,但不可理解的)。最好编辑.rc代码文件并在那里更改图标文件名。

+0

是的,我改变它。现在它显示了,但在Windows 7上发生了一些非常奇怪的事情。 小图标和中等图标正确显示,但大图标和超大图标显示MFC默认图标。 – 2010-11-15 04:04:21

+0

我也遇到同样的问题。我的情况是,列表和小图标无法正确显示。是否因为图标文件本身?你是如何最终解决问题的?谢谢。 – 2342G456DI8 2013-09-19 07:59:36

1

我想我还记得,它是在被使用,无论你做什么,所以你可能需要编辑.RC文件直接,就像djeidot说rc文件的第一个图标。

+0

我不明白MFC为什么会这样设计,因为它非常愚蠢,但它是我的答案。另外,我还必须更改Ressource.h,以便我的ICON的ID也将成为列表中的第一个ICON ID。 – Papsicle 2014-06-20 20:31:32

0

我有同样的问题,这个解决方案解决这个问题:

  1. 重新生成\清理解决方案
  2. 复制appA.ico到res文件夹
  3. 重建项目
0

我有相同问题并通过以下方式解决: 1.清除解决方案 2.打开任务管理器并转到详细信息选项卡。 3.搜索explorer.exe并右击它并结束任务。 4.goto文件 - >运行新任务,输入explorer.exe 5.现在建立解决方案并检查应用程序图标。

0

有时,Windows会缓存图标。它可能不是你的应用程序的问题。尝试下载类似Resource Hacker

,看看你的exe文件。如果图标看起来不错,则在您的appdata \ Local文件夹中有一个IconCache.db或类似文件(取决于Windows版本)。删除并重新加载资源管理器。