Vielleicht speichert MS dort seine
API-Version, oder sowas.
Das ist nicht die
API-Version sondern das Feld "WORD cGrow", das auf Basis von "cCurImage" (Aktuelle Anzahl) und "cMaxImage" (Capazität) bei jedem Laden (nicht beim Speichern) neu berechnet wird. Wenn man eine ImageListe lädt, dann ist nicht mehr identisch mit den Daten aus dem Stream.
(Struct von WINE stibitzt)
Code:
#define IMAGELIST_MAGIC 0x53414D58
/* Header used by ImageList_Read() and ImageList_Write() */
#include "pshpack2.h"
typedef struct _ILHEAD
{
USHORT usMagic;
USHORT usVersion;
WORD cCurImage;
WORD cMaxImage;
WORD cGrow;
WORD cx;
WORD cy;
COLORREF bkcolor;
WORD flags;
SHORT ovls[4];
} ILHEAD;