Я пытаюсь получить скриншот 500x500 из позиции экрана 0x0 (в верхнем левом углу) и поместить его в окно.
Вот мой код (hwnd
- мой дескриптор окна):
HDC appDc = GetDC(hwnd);
HDC dc = GetDC(NULL);
HBITMAP bitmap = CreateCompatibleBitmap(dc, 500, 500);
HDC memoryDc = CreateCompatibleDC(dc);
SelectObject(memoryDc, bitmap);
BitBlt(appDc, 0, 0, 500, 500, dc, 0, 0, SRCCOPY);
ShowWindow(hwnd, SW_SHOW);
SetWindowText(hwnd, _T("Window"));
Что мне здесь не хватает?Я получаю черный внутри окна вместо захвата экрана.
РЕДАКТИРОВАТЬ
Это работает после того, как я изменил memoryDc
на dc
Раньше было BitBlt(appDc, 0, 0, 500, 500, memoryDc, 0, 0, SRCCOPY);
Но теперь проблема заключается в SelectObjectне работает. Я имел в виду, что не помещать изображение в HBITMAP.Однако BitBlt копирует из dc
в appDc