本文整理自网络,侵删。
program JieTug;
{$APPTYPE CONSOLE}
uses
Windows,
Graphics,
Jpeg;
function PrintWindow(SourceWindow: hwnd; Destination: hdc; nFlags: cardinal): bool; stdcall; external 'user32.dll' name 'PrintWindow';
procedure JieTu(); stdcall;
var
bmp : TBitmap;
wnd : cardinal;
Jpg:Tjpegimage;
rec : TRect;
begin
wnd := FindWindow(nil,'计算器');
if wnd <> 0 then
begin
GetWindowRect(wnd,rec);
bmp := TBitmap.Create;//??建一??BITMAP?泶娣?D像
Jpg:=Tjpegimage.Create;//??建一??jpeg?泶娣?D像
try
bmp.Width := rec.Right - rec.Left; //创建高宽
bmp.Height := rec.Bottom - rec.Top;//创建高宽
PrintWindow(wnd, bmp.Canvas.Handle, 0);//
Jpg.Assign (bmp);//复制抓到的屏幕
Jpg.SaveToFile('1.jpg');//保存地址
bmp.Free;
Jpg.Free;
finally
end; //////这个代码EXE200多K 能不能变小点
end;
end;
begin
JieTu;
end.
相关阅读 >>
Delphi 2009 indy10 idhttp get 中文出现乱码的问题
Delphi isipadress 非正则表达式验证ip的方法
Delphi tbitmap创建时提示object or class type required
更多相关阅读请进入《Delphi》频道 >>