1、添加rc文件到工程
右键rc文件,选择添加资源文件,导入icon文件


2、vs查看resource.h、rc文件,成功添加了icon


3、vs重新编译工程,exe图标会被更新
4、若上述步骤后,exe图标没有被更新,排查如下
4.1、使用ResourceHacker.exe打开exe文件,查看Icon Group中是否有icon,
默认Icon Group中第一个是exe的图标。(这一步能排查icon是否被编译到exe中)

4.2、若用工具看icon被编译到exe中,但exe图标还是老的,不是新的,这是因为系统有图标缓存,此时可以强制系统更新图标,重启资源管理器,再查看exe的图标就会变成新的了。

ResourceHacker.exe下载地址:
http://www.angusj.com/resourcehacker/#download
5、程序中有多个icon,默认Resource.h中IDI_ICON_xxx定义最小的是exe图标,这个宏数值定义可以手动修改

给读者留思考,如果用代码实现要怎么实现呢,用LoadIcon、WM_SETICON可以么