CDC dc, *pMemDC = NULL;
CBitmap *pBmp = NULL;
BITMAP bmp;
dc.CreateDC("DISPLAY", NULL, NULL, NULL); pMemDC = new CDC;
if (!pMemDC)
return FALSE;
pMemDC->CreateCompatibleDC(&dc); pBmp = new CBitmap;
if (!pBmp)
return FALSE;
pBmp->CreateCompatibleBitmap(&dc, 1024, 768);
pMemDC->SelectObject(pBmp);
ShowWindow(SW_HIDE);

pMemDC->BitBlt(0, 0, 1024, 768, &dc, 0, 0, SRCCOPY);

pBmp->GetBitmap(&bmp); // 其他属性都能得到,bmp.bmBits为什么是NULL???

解决方案 »

  1.   

    LONG GetBitmapBits(
      HBITMAP hbmp,      // handle to bitmap
      LONG cbBuffer,     // number of bytes to copy
      LPVOID lpvBits     // buffer to receive bits
    );
      

  2.   

    CBitmap::GetBitmapBits 
    DWORD GetBitmapBits(
       DWORD dwCount,
       LPVOID lpBits 
    ) const
      

  3.   

    MARK,但是这个数据是什么形式的呀,能讲具体点么?