Ja se izvinjavam sto ovoliko kasnim sa ovom temom,ali nisam imao vremena za to!
evo code :
Code:
procedure brisi(Dir: string; var i : integer);
var
SR: TSearchRec;
begin
i:=0;
Dir:=Dir+'slike\';
Dir := IncludeTrailingPathDelimiter(Dir);
if FindFirst(dir+'*',faAnyFile,SR) = 0
then
begin
repeat
if (ExtractFileExt(SR.Name)='.jpg')
then
begin
DeleteFile(Dir+SR.Name);
i:=i+1;
end;
until FindNext(SR) <> 0;
end;
end;
procedure Prebroj(Dir: string; var i : integer; var FS: DWord);
var
SR: TSearchRec;
begin
i:=0;
FS:=0;
Dir:=Dir+'slike\';
Dir := IncludeTrailingPathDelimiter(Dir);
if FindFirst(dir+'*',faAnyFile,SR) = 0
then
begin
repeat
if (ExtractFileExt(SR.Name)='.jpg')
then
begin
FS:=FS+Sr.Size;
i:=i+1;
end;
until FindNext(SR) <> 0;
end;
end;
function BMPtoJPG(var BMPpic, JPGpic: string):boolean;
var
Bitmap: TBitmap;
JpegImg: TJpegImage;
begin
Result:=False;
Bitmap := TBitmap.Create;
try
Bitmap.LoadFromFile(BMPpic) ;
JpegImg := TJpegImage.Create;
try
JpegImg.Assign(Bitmap) ;
JpegImg.SaveToFile(JPGpic) ;
Result:=True;
finally
JpegImg.Free
end;
finally
Bitmap.Free
end;
end;
procedure Capture(ARect : TRect);
var
ScreenDC:HDC;
Slika:TBitmap;
Image : TImage;
s1,s2:string;
BrSlika : integer;
FS:DWord;
path : string;
begin
path:=ExtractFilePath(Application.ExeName);
prebroj(path,BrSlika,FS);
Slika:=TBitmap.Create;
Image:=TImage.Create(Image);
begin
try
ScreenDC:=GetWindowDC(GetDeskTopWindow);
Slika.Width:=ARect.Right-ARect.Left;
Slika.Height:=ARect.Bottom-ARect.Top;
BitBlt(Slika.Canvas.Handle,0,0,Slika.Width,Slika.Height,ScreenDC,ARect.Left,Arect.Top,SRCCOPY);
Slika.SaveToFile(ExtractFilePath(Application.ExeName)+'slike\'+IntToStr(BrSlika+1)+'.bmp');
Image.Picture.Bitmap:=Slika;
Image.Picture.SaveToFile(ExtractFilePath(Application.ExeName)+'slike\'+IntToStr(BrSlika+1)+'.bmp');
s1:=(ExtractFilePath(Application.ExeName)+'slike\'+IntToStr(BrSlika+1)+'.bmp');
s2:=(ExtractFilePath(Application.ExeName)+'slike\'+IntToStr(BrSlika+1)+'.jpg');
BmpToJpg(s1,s2);
DeleteFile(ExtractFilePath(Application.ExeName)+'slike\'+IntToStr(BrSlika+1)+'.bmp');
finally
ReleaseDC(GetDeskTopWindow,ScreenDC);
Slika.Free;
Image.Free;
end;
end;
end;
E sad ja na timer1 upisem :
Code:
Capture(Rect(500,0,Screen.Width,500));
Ne vidim gde je greska??Probao sam i sam i da upisem application.processmessage ??
Moze mala pomoc!Hvala,poz!