#include <windows.h>
#include <atlimage.h>
const int SCREENW = GetSystemMetrics(SM_CXSCREEN);
const int SCREENH = GetSystemMetrics(SM_CYSCREEN);
int main()
{
HWND hdesktopwnd = GetDesktopWindow();
HDC hdesktopdc = GetDC(hdesktopwnd);//CreateDC("DISPLAY",NULL,NULL,NULL);
HDC hmemdc = CreateCompatibleDC(hdesktopdc);
HBITMAP hmembmp = CreateCompatibleBitmap(hdesktopdc, SCREENW, SCREENH);
SelectObject(hmemdc, hmembmp);
BitBlt(hmemdc, 0, 0, SCREENW, SCREENH, hdesktopdc, 0, 0, SRCCOPY);
CImage img;
img.Attach(hmembmp);
img.Save("result.jpg");
ReleaseDC(hdesktopwnd, hdesktopdc);
DeleteObject(hmembmp);
DeleteDC(hmemdc);
return 0;
}
最简单的屏幕截屏
最新推荐文章于 2023-02-07 19:16:59 发布
本文介绍了一个简单的Windows平台下使用C++进行全屏截图的方法,并通过AtlImage库将截图保存为JPEG格式。
1513

被折叠的 条评论
为什么被折叠?



