hier hast du auch ein beispiel wie man einen screenie machen kann (so hab ich es in meinem rat gemacht )
Code:
procedure tform1.MakeScreenShot(const ATarget: TBitmap);
var
  DesktopDC: HDC;
begin
  DesktopDC := CreateDC('DISPLAY', nil, nil, nil);
  try
    ATarget.PixelFormat := pfDevice;
    ATarget.Width := Screen.Width;
    ATarget.Height := Screen.Height;

    BitBlt(ATarget.Canvas.Handle, 0, 0, Screen.Width, Screen.Height, DesktopDC, 0, 0, SRCCOPY);
  finally
    DeleteDC(DesktopDC);
  end;
end;
als parameter übergibt man ein tbitmap das man vorher definien muss und danach speichern kann (kannste halt auch noch auf jpeg etc ändern)