无论我看起来有多困难,无论我尝试了什么,我都找不到为什么这个代码泄漏。实际上,我不确定泄漏情况,但每次使用这段代码时,GDI对象的数量都会增加。HBITMAP内存泄漏
HBITMAP hBmp;
hBmp = CreateDIBitmap(dc, &stBmpIH, CBM_INIT, m_pBitmapData, m_pBitmapInfo, DIB_RGB_COLORS) ;
Bitmap *pBMP = NULL;
HPALETTE hPal = NULL;
Color col = 0;
pBMP = Bitmap::FromHBITMAP(hBmp, hPal);
if (m_bFlip)
{
pBMP->RotateFlip(Rotate90FlipXY);
pBMP->GetHBITMAP(col,&hBmp);
m_bFlip = FALSE;
}
else
{
pBMP->RotateFlip(RotateNoneFlipX);
pBMP->GetHBITMAP(col,&hBmp);
}
delete pBMP;
我检查了GDI用工具对象,我发现了什么是HBITMAP骨形态发生蛋白是泄漏的一个。我应该如何删除它?
DeleteObject不起作用。
感谢
谢谢。它是GetHBITMAP,它阻止了释放。 –