private int GetDesktopColourDepth()
{
Graphics desktopHandle = Graphics.FromHwnd(IntPtr.Zero);
Bitmap desktopBitmap = new Bitmap(1, 1, desktopHandle);
PixelFormat formatToReturn = desktopBitmap.PixelFormat;
desktopBitmap.Dispose();
desktopHandle.Dispose();
if ((formatToReturn == PixelFormat.Format32bppArgb) ||
(formatToReturn == PixelFormat.Format32bppPArgb) ||
(formatToReturn == PixelFormat.Format32bppRgb))
{
return 32;
}
return 16;
}