C语言/C++ 远程监控系统
1. 原理
原理:截取桌面图片进行发送到服务器
2. Windows 图形图像
2.1 安装 eazyx
EasyX Graphics Library 是针对 Visual C++ 的免费绘图库,支持 VC6.0 ~ VC2022,简单易用,学习成本极低,应用领域广泛。目前已有许多大学将 EasyX 应用在教学当中。
2.2
得到 窗口的 HDC 就可以绘制
下面这段代码就可以不断获取当前桌面图片,并显示
#include <iostream>
#include <easyx.h>
using namespace std;
int main() {
	// 怎么获取桌面图片
	// GDI 绘图
	// HDC 绘图设备
	//cout << "hello" << endl;
	// 1. 获取到窗口的绘图设备
	HWND hDeskWnd = GetDesktopWindow(); // 0000000000010010
	// 2. 得到桌面窗口的HDC
	HDC hDeskDc = GetWindowDC(hDeskWnd); // 000000003B014929
	// 3. 获取桌面大小
	int nDeskWidth = GetDeviceCaps(hDeskDc, HORZRES); // 2560
	int nDeskHeight = GetDeviceCaps(hDeskDc, VERTRES); // 1440
	// 4. 创建一个空图片用来存储桌面图片
	IMAGE BackgroundImage(nDeskWidth, nDeskHeight);
	// 得到空图片的HDC
	HDC hImageDc = GetImageHDC(&BackgroundImage);
	// 初始一个画布
	initgraph(1280, 720);
	while (1) {
		
		// 把桌面丢进空图片
		BitBlt(hImageDc, 0, 0, nDeskWidth, nDeskHeight, hDeskDc, 0, 0, SRCCOPY);
		// 通过 保存-加载 来实现缩放
		saveimage(L"1.jpg", &BackgroundImage);
		loadimage(&BackgroundImage, L"1.jpg", 1280, 720);
		// 展示画布
		putimage(0, 0, 1280, 720, &BackgroundImage, 0, 0);
	}
	
}界面优化
控制台项目 窗口项目 动态静态库项目
