Hallo,
Ich hab das mit den
DC`s freigeben jetzt so verstanden dass ich mir beim screenshot machen nur einmal eins hole, und dasselbe dann wieder freigebe:
Delphi-Quellcode:
function FormularScreenShot(Bmp: TBitmap; h : hWnd): Boolean;
var
Rec: TRect;
iWidth, iHeight: Integer;
handleDC:hwnd;
begin
with Bmp do try
GetWindowRect(h, Rec);
iWidth := Rec.Right - Rec.Left;
iHeight := Rec.Bottom - Rec.Top;
Width := iWidth;
Height := iHeight;
handleDC:=GetWindowDC(h);
BitBlt(Canvas.Handle, 0, 0, iWidth, iHeight, handleDC, 0, 0, SRCCOPY);
Result := True;
finally
ReleaseDC(h, handleDC);
end;
end;
sieht dann so aus? War das was du meintest? Also im ersten Testlauf hab ich nach 10minuten keine Verlangsamung bemerkt. Also schonmal danke für die Idee!
1. Verdacht:
RAM läuft voll - es muss mehr geswappt werden.
Danke für die Antwort, nur, was bedeutet das? ^^ was heißt mehr geswappt werden?
Danke fürs Lesen,
quetzal