【问题标题】:How do I set a taskbar icon for Win32 application?如何为 Win32 应用程序设置任务栏图标?
【发布时间】:2019-04-19 20:05:45
【问题描述】:

我正在为 Windows 10 创建一个简单的 Win32 GUI 应用程序。我想设置一个图标,当它打开时会出现在任务栏中。我已经在资源文件中定义了一个图标,但它只出现在文件资源管理器中的 exe 文件旁边。当我打开应用程序时,它仍然只显示默认图标。在 Windows 编程方面,我是个大菜鸟,所以如果我遗漏了一些明显的东西,我很抱歉。

感谢任何帮助。

我的 resources.rc 文件:

#include "winuser.h"
CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "TDAssist.exe.manifest"
id ICON "icon.ico"

【问题讨论】:

  • 谷歌“重置外壳图标缓存”以获得成功。
  • icon.ico 文件中包含哪些尺寸/分辨率的图标?至少应该有一个 32x32 的 32 位。

标签: c++ windows win32gui


【解决方案1】:

任务栏使用窗口中的图标,而不是资源中的第一个图标。

使用LoadImage(GetModuleHandle(0),..., LR_SHARED) 获取HICON 并在注册窗口类或发送WM_SETICON 时将其分配给窗口。

任务栏和 Alt+Tab 对话框在某些版本中可能会显示 .exe 图标,但这取决于窗口样式和其他未记录的细节。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多