Ir al contenido

Win Screenshot

Tipo: win-screenshot  ·  Paquete: Desktop Activities v1.0.8

Toma una captura de pantalla de la ventana completa o de un elemento concreto y la guarda en un archivo de imagen. Sirve para dejar evidencia de un resultado (el comprobante que mostró la aplicación) y para diagnosticar fallos: una captura en el catch te muestra cómo estaba la aplicación cuando algo salió mal.

Captura el área de pantalla del elemento del selector o —si lo omites— de la ventana completa de la sesión, y la guarda en path.

  • Captura lo que se ve en pantalla en esa zona: no trae la ventana al frente, así que si otra ventana la tapa, sale en la imagen. Usa antes Win Focus si hace falta.
  • Si path termina en .jpg guarda JPEG; con cualquier otra extensión, PNG.
  • Crea la carpeta de destino si no existe y sobrescribe el archivo si ya existe.
  • Como toda captura, es explícita: solo ocurre donde pones la actividad, nunca automáticamente al fallar.

Para capturar todo el escritorio sin sesión ni selector, usa Take Screenshot.

ParámetroTipoPor defectoDescripción
pathstring—Ruta del archivo de salida (.png, .jpg). Ej: C:\temp\captura.png.
ParámetroTipoPor defectoDescripción
sessionZoanDesktopSession—Sesión de Win Attach. Dentro de un body se toma sola. Necesaria para capturar la ventana completa.
selectorselector—Elemento a capturar. Vacío = toda la ventana de la sesión. Sin sesión, el selector debe incluir la ventana.
timeoutnumber30000Máximo en ms a esperar el elemento (si hay selector). Vacío = el tiempo de espera de interfaz del proyecto o, si no lo define, 30000.

Esta actividad no devuelve ningún valor: la imagen queda en path. Si necesitas la ruta en una variable, constrúyela antes en una y pásala en path.

MensajeCausa y solución
Se requiere 'session' o 'selector'.No hay sesión (ni body) ni selector: no se sabe qué capturar.
'path' es obligatorio.Falta la ruta del archivo.
No se encontró el elemento con el selector {…}.Ver errores comunes.
Error de Windows al copiar la pantallaEl robot no tiene un escritorio interactivo (Session 0 o sesión bloqueada). Ejecútalo con una sesión de robot.

Capturar la ventana si algo falla, para diagnóstico:

Try / Catch errorVariable = error
├─ try:
│ Win Click session = app selector = (botón "Procesar")
│ Win Wait For session = app selector = (etiqueta "Listo") state = visible
└─ catch:
Win Screenshot session = app path = "C:/evidencias/error_" + now().ToString("yyyyMMdd_HHmmss") + ".png"
Log level = error message = "Fallo al procesar: " + error.Message

Guardar como evidencia solo el comprobante que muestra la aplicación:

Win Screenshot selector = (panel "Comprobante") path = pathJoin(carpetaEvidencias, numeroFactura + ".png")