如何为 Win32 应用程序设置任务栏图标?

How do I set a taskbar icon for Win32 application?

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

感谢任何帮助。

我的 resources.rc 文件:

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

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

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

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