Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.05.21;
Скачать: CL | DM;

Вниз

Скриншот в консольном приложении   Найти похожие ветки 

 
Ezorcist   (2006-04-30 19:06) [0]

Как сделать скриншот и запихнуть его в поток?


 
Eraser ©   (2006-04-30 19:18) [1]

BitBlt + TBitmap.SaveToStream


 
Ezorcist   (2006-04-30 20:07) [2]

Можно пример?


 
Ezorcist   (2006-04-30 21:18) [3]

procedure MakeScreenshot (Bmp: TBitmap);
var
DC: HDC;
begin
Bmp.Width := GetSystemMetrics(0);
Bmp.Height := GetSystemMetrics(1);
DC := GetDC (GetDesktopWindow);
try
  BitBlt (
    Bmp.Canvas.Handle,
    0,0,Bmp.Width,Bmp.Height,
    DC,
    0,0,
    SRCCOPY);
finally
  ReleaseDC (GetDesktopWindow,DC);
end;
end;

...var bit:tbitmap; ms:tmemotystream;
begin
      bit:=tbitmap.Create;
      ms:=tmemorystream.Create;
      MakeScreenshot(bit);
      bit.SaveToStream(ms);
     socket.SendStream(ms);
end;

Почему-то клиенту данных не приходит(
Если сделать так:
      bit:=tbitmap.Create;
      ms:=tmemorystream.Create;
      MakeScreenshot(bit);

Не работает штука
      Image1.Picture.Bitmap.LoadFromStream(MS);
А это работает
      Image1.Picture.Bitmap:=Bit;


 
Ezorcist   (2006-05-01 08:58) [4]

??


 
Eraser ©   (2006-05-01 17:35) [5]


> Ezorcist   (30.04.06 21:18) [3]


> Почему-то клиенту данных не приходит(


>  MakeScreenshot(bit);
>       bit.SaveToStream(ms);
>      socket.SendStream(ms);

перед socket.SendStream(ms); вставь
ms.Position := 0;



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

Текущий архив: 2006.05.21;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.034 c
1-1144745826
MiHoY
2006-04-11 12:57
2006.05.21
поиск дочернего окна


3-1143517357
Black_phoenix
2006-03-28 07:42
2006.05.21
Создание выделенного сервера


3-1143199345
Arm79
2006-03-24 14:22
2006.05.21
хранение значенй TBookmarkStr


8-1134806433
Kot Andrei
2005-12-17 11:00
2006.05.21
"Упрощение" цветов на фотографии


10-1119469828
beg
2005-06-22 23:50
2006.05.21
Сводная таблица(Excel)