Einzelnen Beitrag anzeigen

Delphi Star

Registriert seit: 4. Apr 2004
432 Beiträge
 
Delphi 2005 Personal
 
#1

Screenshot erstellen von sekundärem Monitor

  Alt 6. Okt 2007, 13:19
Ich versuche momentan diesen Code so umzubauen, dass er mir einen Screenshot von meinem 2. Monitor macht. Allerdings war ich damit bis jetzt erfolglos, da ich nur Fehler bekomme. Momentan benutze ich folgenden Code, der ist aber nicht besonders schnell (Dafür verstehe ich ihn ).
Delphi-Quellcode:
procedure GetScreenShot(monitor: integer);
var
  DesktopDC: HDC;
begin
  DesktopDC := CreateDC('DISPLAY', nil, nil, nil);
  try
    mainform.Ausgabe.Picture.Bitmap.PixelFormat := pfDevice;
    mainform.Ausgabe.Picture.Bitmap.Width := Screen.Monitors[monitor].Width;
    mainform.Ausgabe.Picture.Bitmap.Height := Screen.Monitors[monitor].Height;

    BitBlt(mainform.Ausgabe.Picture.Bitmap.Canvas.Handle, 0, 0, Screen.Monitors[monitor].Width, Screen.Monitors[monitor].Height, DesktopDC,Screen.Monitors[monitor].left, Screen.Monitors[monitor].top, SRCCOPY);
  finally
    DeleteDC(DesktopDC);
  end;
  mainform.ausgabe.Repaint;
end;
Real programmers code in binary
SwapIt: Punkte
  Mit Zitat antworten Zitat