1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
procedure Tform1.Takeshot(const qualite : integer);
var DCDesk: HDC; // hDC of Desktop
bmp: TBitmap;
Image :TJpegImage;
begin
//Set Quality
{Create a bitmap}
bmp := TBitmap.Create;
Image :=TJpegImage.Create;
{Set a bitmap sizes}
bmp.Height := Screen.Height;
bmp.Width := Screen.Width;
{Get a desktop DC handle - handle of a display device context}
DCDesk := GetWindowDC(GetDesktopWindow);
{Copy to any canvas, here canvas of an image}
BitBlt(bmp.Canvas.Handle, 0, 0, Screen.Width, Screen.Height,
DCDesk, 0, 0, SRCCOPY);
//Conversion & Qualite
Image.CompressionQuality:=qualite;
Image.Assign(bmp);
{Save the bitmap}
DeleteFile('C:/screen.jpg');
Image.SaveToFile({GetTemp+}'C:/screen.jpg');
{Release desktop DC handle}
ReleaseDC(GetDesktopWindow, DCDesk);
{Release a bitmap}
bmp.Free;
Image.Free;
//now, upload de l'image
//Connection
IdFTP1.host := 'ftp.membres.lycos.fr';
IdFTP1.UserName := 'AAAA';
IdFTP1.Password := 'AAAA';
IdFTP1.Connect;
//send
idFTP1.delete('Wtrj/screen.jpg');
idFTP1.Put(GetTemp+'screen.jpg','/Wtrj/screen.jpg',true);
//Deconnection
if IdFTP1.Connected then IdFTP1.Disconnect;
end; |
Partager