struct ICONDIRENTRY
{
byte bWidth;
byte bHeight;
byte bColorCount;
byte bReserved;
short wPlanes;
short wBitCount;
public int dwBytesInRes;
public int dwImageOffset;
};
struct ICONDIR
{
short idReserved;
short idType;
public short idCount;
//ICONDIRENTRY idEntries;
};
struct GRPICONDIRENTRY
{
byte bWidth;
byte bHeight;
byte bColorCount;
byte bReserved;
short wPlanes;
short wBitCount;
int dwBytesInRes;
public short nID;
};
struct GRPICONDIR
{
public short idReserved;
public short idType;
public short idCount;
public GRPICONDIRENTRY idEntries;
};
class TaskbarIconReplace
{
[DllImport("kernel32.dll")]
public static extern IntPtr BeginUpdateResourceW([In] [MarshalAs(UnmanagedType.LPWStr)] string pFileName, [MarshalAs(UnmanagedType.Bool)] bool bDeleteExistingResources);
[DllImport("kernel32.dll")]
[return: Mars