在多屏幕应用的场景中。其中有一个屏幕启动全屏游戏应用,另一个屏幕有一个窗口调用UpdateLayeredWindow 更新窗口信息,当游戏应用为16位色时候失败。故需要修改设定参数。例子代码如下:
HDC hdctemp = ::GetDC (m_hWnd); //GetDC()->m_hDC;
HDC hdcMemory=CreateCompatibleDC(hdctemp);
HBITMAP hBitMap=CreateCompatibleBitmap(hdctemp,rect.Width(),rect.Height()/*m_BGHeight*/);
修改为
HDC hdctemp = ::GetDC (m_hWnd); //GetDC()->m_hDC;
HDC hdcMemory=CreateCompatibleDC(hdctemp);
BYTE * pBits ;
BITMAPINFOHEADER bmih;
ZeroMemory( &bmih, sizeof( BITMAPINFO ) );
bmih.biSize = sizeof (BITMAPINFOHEADER)