Показать сообщение отдельно
Старый 27.10.2005, 14:43     # 1
Chaser
Junior Member
 
Регистрация: 20.10.2005
Адрес: Москва
Сообщения: 69

Chaser Реально крут(а)Chaser Реально крут(а)Chaser Реально крут(а)Chaser Реально крут(а)
Как программно заграбить полноэкранное DOS окно

Кто знает, как программно заграбить (аналог PrintScreen) полноэкранное DOS окно?
Нижеприведенный код, запоминающий Windows окна на полноэкранном DOS окне дает белый квадрат:

var
bmp: TBitmap;
dc: hdc;
jp: TJPEGImage;
begin
bmp := TBitmap.Create;
jp :=TJpegImage.Create;
bmp.Width := Screen.Width;
bmp.Height := Screen.Height;

BitBlt(bmp.Canvas.Handle, 0, 0, Screen.Width, Screen.Height,
GetDC(GetDesktopWindow), 0, 0, SRCCopy);
Clipboard.Assign(bmp);

if Clipboard.HasFormat(CF_BITMAP) then
begin
bmp.Canvas.Font.Color := clGreen;
bmp.Canvas.Font.Size:=10;
try
with Bmp do
begin
jp.Assign(Bmp);
jp.SaveToFile(IntToStr(i)+'.jpg');
end;
except

end;
end;
end;
Chaser вне форума