这段CDC 画图代码 请问哪里错了?
void DrawBMP(HDC hdc , CBitmap * bgbmp , CBitmap * bmp , CBitmap * bmpmask , POINT pt , int num)
{
CDC dc;
CDC mdc,mdc1;
dc.Attach(hdc);
mdc.CreateCompatibleDC(&dc);
mdc1.CreateCompatibleDC(&dc);
SIZE bgbmpsize = GetBMPSize(bgbmp); //GetBMPSize()为获得Bmp图的宽和高
mdc1.SelectObject(bgbmp);
mdc.BitBlt(0,0,bgbmpsize.cx,bgbmpsize.cy,&mdc1,0,0,SRCCOPY);
SIZE bmpsize = GetBMPSize(bmp);
mdc1.SelectObject(bmp);
mdc.BitBlt(pt.x,pt.y,bmpsize.cx/4,bmpsize.cy,&mdc1,bmpsize.cx/4*num,0,SRCAND);
mdc1.SelectObject(bmpmask);
mdc.BitBlt(pt.x,pt.y,bmpsize.cx/4,bmpsize.cy,&mdc1,0,0,SRCPAINT);
dc.BitBlt(0,0,GetBMPSize(bgbmp).cx,GetBMPSize(bgbmp).cy,&mdc,0,0,SRCCOPY);
}