首页 > 编程资源分享区 > C/C++源代码共享 > 用VC抓取屏幕图象并压缩
2006
02-10

用VC抓取屏幕图象并压缩

用下面函数可发实现。
HBITMAP GetScreenBmp()
HWND hwnd = ::GetDesktopWindow();
HDC hsrc = ::GetDC(hwnd);
HDC hmemdc = ::CreateCompatibleDC(hsrc);
RECT rc; ::GetWindowRect(hwnd,&rc);
SIZE sz;sz.cx=rc.right-rc.left;sz.cy=rc.bottom-rc.top;
HBITMAP hbmp = ::CreateCompatibleBitmap(hsrc,sz.cx,sz.cy);
HGDIOBJ holdbmp = ::SelectObject(hmemdc,hbmp);
::BitBlt(hmemdc,0,0,sz.cx,sz.cy,hsrc,rc.left,rc.top,SRCCOPY) ;
::SelectObject(hmemdc,holdbmp);


::DeleteObject(hmemdc);
::ReleaseDC(hwnd,hsrc);
return hbmp;


留下一个回复