我写的这个截全屏函数有什么问题

HBITMAP LYGetScreen()
{
HWND hwin;
HDC dc,memdc;
HBITMAP hbitm;
RECT rect;
int cx,cy;//桌面大小
hwin=GetDesktopWindow();//获取桌面窗口句柄
dc=GetWindowDC(NULL);//获取桌面窗口DC
GetWindowRect(hwin,&rect);//获取桌面窗口大小
cx=rect.right-rect.left;
cy=rect.bottom-rect.top;
memdc=CreateCompatibleDC(dc);//创建与桌面窗口DC相适应的内存DC
hbitm=CreateCompatibleBitmap(dc,cx,cy);//创建相适应的位图
SelectObject(memdc, hbitm);//将新建的位图选入内存DC中
BitBlt(memdc,0,0,cx,cy,dc,0,0,SRCCOPY);//复制屏幕到memdc中
return hbitm;
}

觉得没问题呀,除了有些dc对象需要delete。