Windows 응용 프로그램 스크린샷 캡처
Windows 프로그래밍에서는 현재 화면의 스크린샷을 캡처하는 것이 일반적인 요구 사항입니다. 이를 위해 Win32 API는 화면의 비트맵 표현을 얻는 데 필요한 기능을 제공합니다.
Win32 스크린샷 코드
Windows 애플리케이션에서 스크린샷을 찍으려면 다음을 사용하세요. Win32의 경우 다음 단계를 따르세요.
HDC hScreenDC = GetDC(nullptr);
전체의 장치 컨텍스트를 검색합니다. screen.
HDC hMemoryDC = CreateCompatibleDC(hScreenDC);
화면 비트맵 복사를 위해 호환되는 장치 컨텍스트를 만듭니다.
int width = GetDeviceCaps(hScreenDC,HORZRES); int height = GetDeviceCaps(hScreenDC,VERTRES);
화면의 너비와 높이를 픽셀 단위로 가져옵니다.
HBITMAP hBitmap = CreateCompatibleBitmap(hScreenDC,width,height);
화면 이미지를 저장할 호환 가능한 비트맵을 생성하세요.
HBITMAP hOldBitmap = static_cast<HBITMAP>(SelectObject(hMemoryDC,hBitmap));
호환되는 비트맵을 선택하세요. 호환 장치 컨텍스트.
BitBlt(hMemoryDC,0,0,width,height,hScreenDC,0,0,SRCCOPY);
비트 블록 전송(BitBlt)을 사용하여 화면 이미지를 호환 비트맵에 복사합니다.
hBitmap = static_cast<HBITMAP>(SelectObject(hMemoryDC,hOldBitmap));
이전 비트맵 선택을 메모리 장치 컨텍스트로 복원합니다.
DeleteDC(hMemoryDC); DeleteDC(hScreenDC);
리소스를 해제하려면 두 장치 컨텍스트를 모두 삭제하세요.
위 내용은 Win32 API를 사용하여 Windows 응용 프로그램 스크린샷을 캡처하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!