PrintScreen.h
#pragma once
#include <Windows.h>
class PrintScreen
{
public:
PrintScreen();
~PrintScreen();
void createBMP(char *name);
private:
HDC hDC;
HDC comHDC;
int width;
int height;
HBITMAP hBitmap;
BITMAPINFOHEADER bmiHeader;
DWORD dwBmpSize;
DWORD dwSizeofDIB;
BITMAPFILEHEADER bmfHeader;
char *lpbitmap;
};
PrintScreen.cpp
#include "PrintScreen.h"
#include <fstream>
using namespace std;
PrintScreen::PrintScreen() : lpbitmap(0)
{
hDC = GetDC(NULL);
comHDC = CreateCompatibleDC(hDC);
width = GetSystemMetrics(SM_CXSCREEN);
height = GetSystemMetrics(SM_CYSCREEN);
hBitmap = CreateCompatibleBitmap(hDC, width, height);
SelectObject(comHDC, hBitmap);
bmiHeader.biSize = sizeof(BITMAPINFOHEADER);
bmiHeader.biWidth = width;
bmiHeader.biHeight = height;