and you've tried 16bpp before? if 32 bits didn't work, there's something wrong with your test machine.

int bitsPerPixel = GetDeviceCaps(hdc, BITSPIXEL); //to get current system's color depth

however, i'd say it's safe to assume that every machine now uses 32 bits per pixel. or there's something wrong with it's drivers or person who uses it.