Einzelnen Beitrag anzeigen

Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.323 Beiträge
 
Delphi XE2 Professional
 
#1

ScreenShot eines Fensters machen dessen Inhalt größer Formgröße ist

  Alt 16. Mär 2013, 16:01
Hallo,

mittels folgenden Code mache ich von einem aktiven Fenster einen ScreenShot:

Delphi-Quellcode:
procedure ScreenShot_aktives_Fenster(Bild: TBitMap);
var
  c: TCanvas;
  r, t: TRect;
  h: THandle;

begin
  c := TCanvas.Create;
  c.Handle := GetWindowDC(GetDesktopWindow);

  h := GetForeGroundWindow;

  If h <> 0 then
    GetWindowRect(h, t);

  try
    r := Rect(0, 0, t.Right - t.Left, t.Bottom - t.Top);

    Bild.Width := t.Right - t.Left;
    Bild.Height := t.Bottom - t.Top;
    Bild.Canvas.CopyRect(r, c, t);
  finally
    ReleaseDC(0, c.Handle);
    FreeAndNil(c);
  end;
end;
Dummerweise hab ich eine Software (nicht von mir, ist vom Siemens) dessen Inhalt der Form
zu groß für das maximierte Fenster ist, so dass die Scrollbars angezeigt werden.
Wie könnt ich nun einen Screenshot des kompletten (großen) Inhalts des Fensters machen?
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat