This function sets RGB color values and flags in a range of entries in a logical palette.
UINT SetPaletteEntries( HPALETTE hpal, UINT iStart, UINT cEntries, CONST PALETTEENTRY* lppe );
[in] Handle to the logical palette.
[in] Specifies the first logical-palette entry to be set.
This function fails if iStart is greater than the number of palette entries.
[in] Specifies the number of logical-palette entries to be set.
[in] Long pointer to the first member of an array of PALETTEENTRY structures containing the RGB values and flags.
The number of entries that were set in the logical palette indicates success.
Zero indicates failure.
To get extended error information, call GetLastError.
An application can determine whether or not a device supports palette operations by calling the GetDeviceCaps function and specifying the RASTERCAPS constant.
Even if a logical palette has been selected and realized, changes to the palette do not affect the physical palette in the surface. RealizePalette must be called again to set the new logical palette into the surface.