Текущий архив: 2007.09.30;
Скачать: CL | DM;
Вниз
PrintScreen Найти похожие ветки
← →
ArtikZ © (2007-09-04 16:03) [0]Как во время выполнения проги програмно сделать PrintScreen рабочего стола?
← →
clickmaker © (2007-09-04 16:08) [1]вариант "в лоб"
keybd_event(VK_SNAPSHOT, 0, 0, 0);
keybd_event(VK_SNAPSHOT, 0, KEYEVENTF_KEYUP, 0);
← →
Ivolg © (2007-09-04 16:24) [2]С помощью функции BitBlt();
Пример:
...
var
Bit: TBitMap;
begin
Bit:=TBitMap.Create;
Bit.Width := Screen.Width;
Bit.Height:= Screen.Height;
BitBlt(Bit.Canvas.Handle, 0, 0, Screen.Width, Screen.Height,
GetDC(GetDesktopWindow), 0, 0, SRCCopy);
Bit.SaveToFile("C:\Screen.bmp");
Bit.Free;
end;
← →
Denis_ © (2007-09-04 16:24) [3]
procedure PrintScreenNow(filepath : string);
var
bmp: TBitmap;
begin
bmp := TBitmap.Create;
bmp.Width := Screen.Width;
bmp.Height := Screen.Height;
BitBlt(bmp.Canvas.Handle, 0, 0, Screen.Width, Screen.Height,
GetDC(GetDesktopWindow), 0, 0, SRCCopy);
Image1.Picture.Bitmap:=bmp;
Image1.Picture.SaveToFile(filename);
end;
← →
Denis_ © (2007-09-04 16:26) [4]а, блин, не успел.
← →
Anatoly Podgoretsky © (2007-09-04 16:34) [5]> Denis_ (04.09.2007 16:24:03) [3]
Они немного разные, у тебя образ загоняется в Image1.Picture.Bitmap
← →
Denis_ © (2007-09-04 16:44) [6]
> Они немного разные, у тебя образ загоняется в Image1.Picture.
> Bitmap
ну это так, я копировал и не обратил внимание.Но ИМХО так даже лучше- сразу видно, чего там получилось.Тем более принцип один.
← →
clickmaker © (2007-09-04 16:59) [7]
> GetDC(GetDesktopWindow)
а потом удивляемся: куда ресурсы утекают?
ReleaseDC неплохо бы сделать
← →
Denis_ © (2007-09-04 17:12) [8]
> clickmaker © (04.09.07 16:59) [7]
>
> > GetDC(GetDesktopWindow)
>
> а потом удивляемся: куда ресурсы утекают?
> ReleaseDC неплохо бы сделать
не подумали мы....:(
← →
Инс © (2007-09-04 17:15) [9]Почему все программы-шпионы так похожи друг на друга?
← →
clickmaker © (2007-09-04 17:17) [10]
> [9] Инс © (04.09.07 17:15)
потому что с одного FAQа код тырят. И с одной и той же ошибкой, к тому же :)
← →
Lacmus © (2007-09-04 17:24) [11]>Инс © (04.09.07 17:15) [9]
По-моему, интереснее "Зачем люди пишут программы-шпионы ?"
← →
Dib@zol © (2007-09-04 18:20) [12]> [11] Lacmus © (04.09.07 17:24)
См. http://delphimaster.net/view/15-1188824781/
← →
Dimaxx © (2007-09-05 14:06) [13]
> procedure PrintScreenNow(filepath : string);
> var
> bmp: TBitmap;
> begin
> bmp := TBitmap.Create;
> bmp.Width := Screen.Width;
> bmp.Height := Screen.Height;
> BitBlt(bmp.Canvas.Handle, 0, 0, Screen.Width, Screen.Height,
>
> GetDC(GetDesktopWindow), 0, 0, SRCCopy);
> Image1.Picture.Bitmap:=bmp;
> Image1.Picture.SaveToFile(filename);
> end;
Ты забыл bmp.free и совсем непонятны 2 строки с Image1. А bmp.savetofile не судьба юзануть?
← →
Denis_ © (2007-09-05 18:19) [14]
> Ты забыл bmp.free и совсем непонятны 2 строки с Image1.
> А bmp.savetofile не судьба юзануть?
ОТВЕТ :::
> ну это так, я копировал и не обратил внимание.Но ИМХО так
> даже лучше- сразу видно, чего там получилось.Тем более принцип
> один.
> не подумали мы....:(
Страницы: 1 вся ветка
Текущий архив: 2007.09.30;
Скачать: CL | DM;
Память: 0.49 MB
Время: 0.04 c