Einzelnen Beitrag anzeigen

Benutzerbild von TKC
TKC

Registriert seit: 21. Apr 2004
Ort: Tuningen
367 Beiträge
 
Delphi XE2 Enterprise
 
#6

Re: Screenshot unter DirectX 11 Windows 7/64 Bit

  Alt 28. Apr 2010, 14:29
Hallo,
ich benutze sa immer folgendes ..

Delphi-Quellcode:
const
  PW_CLIENTONLY = 1;

var
  PrintWindow: function(sHandle: HWND; dHandle: HDC; nFlags: UINT): BOOL; stdcall;



function Screenshot(wnd: HWND; const bmp: TBitmap32): Boolean;
var
  rec: TRect;
begin

  GetClientRect(wnd, rec);
  bmp.SetSize((rec.Right - rec.Left), (rec.Bottom - rec.Top));

  bmp.Canvas.Lock;
  try
    Result := PrintWindow(wnd, bmp.Canvas.Handle, PW_CLIENTONLY);

  finally
    bmp.Canvas.Unlock;
  end;
end;

initialization
  @PrintWindow := GetProcAddress(LoadLibrary('user32.dll'), 'PrintWindow');
ist zwar für GR32 kann aber leicht angepasst werden.
  Mit Zitat antworten Zitat