Главная страница
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.055 c
6-1138084853
ВРОМ
2006-01-24 09:40
2006.05.21
FTP-New User


15-1145972626
oldman
2006-04-25 17:43
2006.05.21
Нашел в учебнике "Языки и грамматики программирования"... :)


15-1145858112
Некто
2006-04-24 09:55
2006.05.21
N и EO в GPS-приёмниках


2-1146731938
alk
2006-05-04 12:38
2006.05.21
Фильтрация


2-1147026747
Ksenom
2006-05-07 22:32
2006.05.21
Возможно интересный вопрос по указателям )