Member 14035366 Ответов: 1

Захват указателя мыши в C++ win32


я написал этот код для захвата экрана, он работает на 100%, но не захватывает указатель мыши

я хотел, чтобы он также захватил указатель мыши

Мой код выглядит примерно так

#include "stdafx.h"
#include "screenshot2.h"
#include <Windows.h>
#include <stdio.h>

void ScreenShot() {
	int x1, y1, x2, y2, w, h;

	// get screen dimensions
	x1 = GetSystemMetrics(SM_XVIRTUALSCREEN);
	y1 = GetSystemMetrics(SM_YVIRTUALSCREEN);
	x2 = GetSystemMetrics(SM_CXVIRTUALSCREEN);
	y2 = GetSystemMetrics(SM_CYVIRTUALSCREEN);
	w = x2 - x1;
	h = y2 - y1;

	// copy screen to bitmap
	HDC     hScreen = GetDC(NULL);
	HDC     hDC = CreateCompatibleDC(hScreen);
	HBITMAP hBitmap = CreateCompatibleBitmap(hScreen, w, h);
	HGDIOBJ old_obj = SelectObject(hDC, hBitmap);
	BOOL    bRet = BitBlt(hDC, 0, 0, w, h, hScreen, x1, y1, SRCCOPY);

	// save bitmap to clipboard
	OpenClipboard(NULL);
	EmptyClipboard();
	SetClipboardData(CF_BITMAP, hBitmap);
	CloseClipboard();

	// clean up
	SelectObject(hDC, old_obj);
	DeleteDC(hDC);
	ReleaseDC(NULL, hScreen);
	DeleteObject(hBitmap);

}

int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
	_In_opt_ HINSTANCE hPrevInstance,
	_In_ LPWSTR    lpCmdLine,
	_In_ int       nCmdShow) 
{
	ScreenShot();
	return 0;
}


Что я уже пробовал:

Пробовал использовать GetCusorPos() только я не знаю фактического метода его реализации

Member 14075717

не могли бы вы предоставить файл screenshot2.h .
Спасибо заранее

1 Ответов

Рейтинг:
1

Member 14075717

не могли бы вы предоставить файл screenshot2.h .
Спасибо заранее