//creation of the 2 dc's. hdc is screen.
HDC memDC= ::CreateCompatibleDC(hdc);
HDC imageDC= ::CreateCompatibleDC(hdc);

//created drawing surface fo the memDC
HBITMAP hMemBmp= ::CreateCompatibleBitmap(hdc, wndRect.right-wndRect.left,
wndRect.bottom-wndRect.top);

//Selecting bmp's into dc's
HBITMAP hOldBmp= (HBITMAP)::SelectObject(imageDC, hBmp->HBmp);
HBITMAP hOldMemBmp= (HBITMAP)::SelectObject(memDC, hMemBmp);

//drawing background on memDC
::StretchBlt(memDC, 0, 0, wndRect.right-wndRect.left,
wndRect.bottom-wndRect.top, imageDC, 0, 0, BmpW, BmpH, SRCCOPY);

//Attempt to copy the memDC to another dc yeilds a black box
//and not the image!
::BitBlt(imageDC, drawLocation->left, drawLocation->top, BmpW, BmpH, memDC, drawLocation->left, drawLocation->top, SRCCOPY);