Ver Mensaje Individual
  #6  
Antiguo 28-12-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Esta función captura la ventana indicada:

Código Delphi [-]
procedure SnapShot(Window: HWND; FileName: String);
var
  Canvas: TCanvas;
  Bitmap: TBitmap;
  WindowRect: TRect;
  BmpRect: TRect;

begin
  GetWindowRect(Window, WindowRect);
  Canvas := TCanvas.Create;
  Bitmap := TBitmap.Create;

  try
    Canvas.Handle := GetDC(0);

    Bitmap.Width := WindowRect.Right - WindowRect.Left;
    Bitmap.Height := WindowRect.Bottom - WindowRect.Top;
    BmpRect := Rect(0, 0, Bitmap.Width, Bitmap.Height);

    Bitmap.Canvas.CopyRect(BmpRect, Canvas, WindowRect);
    Bitmap.SaveToFile(FileName);
  finally
    Canvas.Free;
    Bitmap.Free;
  end;
end;

y la guarda en el archivo que se indique. Sin embargo, supongo que por esto:

Cita:
Empezado por Neftali
no es lade la app. activa, sino que está por debajo, por decirlo así, de la actual con la que se está trabajando
no te ha de servir, pues en la captura aparecerá lo que esté por arriba de esa ventana.

// Saludos
Responder Con Cita