求如何用c++实现对可执行程序的图标修改

来源:百度知道 编辑:UC知道 时间:2024/06/05 11:57:34
如题。希望通过一个C++程序完成对可执行程序的修改
邮箱:triplet@live.cn

/*
请使用16位色或以下的普通图标,否则颜色失真。
另外,Exe文件改图标后,可能在该文件夹下看不出来,
这是因为有图标缓存,移动到其他文件夹即可。
或者删除图标缓存(磁盘清理)
*/

#include <stdio.h>
#include <windows.h>
#include <tchar.h>

struct ICONDIRENTRY
{
BYTE bWidth;
BYTE bHeight;
BYTE bColorCount;
BYTE bReserved;
WORD wPlanes;
WORD wBitCount;
DWORD dwBytesInRes;
DWORD dwImageOffset;
};

struct ICONDIR
{
WORD idReserved;
WORD idType;
WORD idCount;
//ICONDIRENTRY idEntries;
};

struct GRPICONDIRENTRY
{
BYTE bWidth;
BYTE bHeight;
BYTE bColorCount;
BYTE bReserved;
WORD wPlanes;
WORD wBitCount;
DWORD dwBytesInRes;
WORD nID;
};

struct GRPICONDIR
{
WORD idReserved;
WORD idType;
WORD idCount;
GRPICONDIRENTRY idEntries;
};

//////////////////////////////////////////////