Вниз
Скачать: CL | DM;

Мне нужно, чтобы, сервер делал снимок экрана(как клавишей Print   Найти похожие ветки 

← →
Delpher-Hacker ©   (2002-08-11 05:57) [0]

Я пишу программу, которая следит за удалённым компьютером.
Есто клиет и сервер. Мне нужно, чтобы, сервер делал снимок экрана(как клавишей Print Screen)
и сразуже отправлял мне,клиенту, чтобы я мог его посмотреть.
Снимок не должен превышать размер в 200Кб.
Как это сделать, приведите пожалуйста пример кода?
Заранее спасибо!!!


← →
Vogul   (2002-08-12 16:35) [1]

Для затравки.


void CShowDesktopDlg::CopyDesktop(LPBYTE buffer)
{
CDC dcScreenMem, dcScaled, dcStatic;
CDC dcScreen, *dcOut;
CBitmap Bitmap, BitmapScaled;
CBitmap BitmapFinally;
CRect rect;
DWORD size;

dcScreen.CreateDC("DISPLAY", NULL, NULL, NULL);

dcScreenMem.CreateCompatibleDC(&dcScreen);
dcScaled.CreateCompatibleDC(&dcScreen);

Bitmap.CreateCompatibleBitmap(&dcScreen, 1152, 864);
BitmapScaled.CreateCompatibleBitmap(&dcScreen, 1152, 864);
BitmapFinally.CreateCompatibleBitmap(&dcScreen, 1152, 864);

CBitmap *pOldBitmap = dcScreenMem.SelectObject(&Bitmap);
dcScaled.SelectObject(&BitmapScaled);

CWnd * Display = (CWnd *) GetDlgItem(IDC_DISPLAY);
dcOut = Display->GetDC();

dcStatic.CreateCompatibleDC(dcOut);
BitmapFinally.CreateCompatibleBitmap(dcOut, 290, 200);

Display->GetWindowRect(&rect);

dcScreenMem.BitBlt(0,0,1152,864,&dcScreen,0,0,SRCCOPY);

dcScaled.StretchBlt(0,0,290,200,&dcScreenMem,0,0,1152,864,SRCCOPY);

size = BitmapScaled.GetBitmapBits(1, buffer);
buffer = (LPBYTE) LocalAlloc(LPTR, size*sizeof(BYTE));
BitmapScaled.GetBitmapBits(size, buffer);
BitmapScaled.DeleteObject();
BitmapFinally.SetBitmapBits(size,buffer);
dcOut->BitBlt(0,0,290,200,&dcStatic,0,0,SRCCOPY);

}


Потом жми в jpeg например и отправляй.


← →
Ghost. ©   (2002-08-12 17:26) [2]

На лист ру можно найти исходник такой проги



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
4-45624
Boroda Oleg
2002-08-30 11:38
2002.10.14
Как отследить создание нового окна в Windows?


6-45480
Димон1
2002-08-13 10:17
2002.10.14
Windows98 Connected


1-45407
LexusU
2002-10-01 08:11
2002.10.14
Как вкл/откл ScreenSaver в Win 98/2000/NT ?


1-45322
Граф
2002-10-05 06:14
2002.10.14
ищу компоненты для интрефейса в стиле ХР Боссу очень нравиться :(


14-45569
ded_di
2002-09-20 15:05
2002.10.14
Конвертация NTFS в FAT32




   Наверх