Compatibilidad con el nivel PPI de windows

Buenas tardes, estoy intentando ejecutar un proceso y me sale el siguiente mensaje de Cartes.

“I have detected an application with a different windows zoom level. this configuration may have errors in the movement of the mouse. Reset the zoom to 100% or change the PDI resolution.”

¿Qué puedo hacer para solventarlo?

Hola Kelly, eso no es un error.

Cartes te está advirtiendo que estás robotizando una aplicación muy antigua que no es totalmente compatible con Windows 10. De hecho ya podría tener problemas desde Windows 7. Esa aplicación no soporta resoluciones de más de 96dpi, y Cartes sólo te avisa de que puedes tener problemas.

Los problemas, si los hubiere que no tiene por qué haberlos, consistirían en que Cartes percibiría los componentes de la aplicación desplazados. Esto es debido a que la aplicación maneja unas coordenadas de pantalla que no corresponden con la realidad, consecuencia de la diferencia de dpi.

Si tienes problemas, configura la resolución a 96dpi. Es decir, deja el Zoom en 100%.

2 Likes

Buenos días, yo estoy con el mismo mensaje de alert cómo Kelly.

Estuve revisando el zoom que tengo en el windows 10 que estoy corriendo y está efectivamente en 100%, de todas formas el cartel de alert aparece.

Hay alguna forma de evitar que aparezca?

Gracias

Hola @molave, en ese caso Cartes te está avisando que intentas robotizar una aplicación que no soporta el modo gráfico de Windows 8 o Windows 10. Es decir, es una aplicación bastante antigua. Consulta en el manual DPIAwareness.

  • Si tiene un valor 0, malo. No es compatible, aunque seguramente la robotizarás sin inicidencias, Cartes te avisa de la situación.
  • Si tiene un valor 1, es que andas tocando los DPI. No los toques.
  • Si tiene un valor 2, totalmente compatible.

El aviso te saldrá cada vez que inicies el proceso.

Muchas gracias @xavier.

El problema que me está generando, es que cuando la alerta aparece, me quita el foco del botón que estoy por presionar y cuando quiero ejecutar el “$btn.click” no hace click porque ya perdió el foco. Hay forma de evitarlo?

Los mensajes de alerta no modifican el foco. Danos tu código para echar un vistazo. Sin datos no hay conclusiones.

De todas formas sospecho que con esto es suficiente.
$btn.click(1);

Buenos días!
Vuelvo sobre el tema, dado que el mensaje de alerta se muestra casi que en cada línea de código que es ejecutada.

Habrá alguna forma de evitar que se muestre esa alerta? Entiendo que la aplicación que está ejecutando el robot es vieja, pero por ahora no hay pronósticos de actualización de la misma.

Muchas gracias!

El mensaje se muestra una única vez por cada variable e identificador de proceso (PID de cada aplicación robotizada).

Si el mensaje se muestra con cada línea de código es porque ejecutas una única vez cada línea de código, o estás abriendo y cerrando continuamente los mismos aplicativos robotizados.

1 Like

Muchas gracias por la respuesta.

En realidad tal vez fui un poco exagerado con que se ejecuta con cada línea de código, pero lo que si sucede es que constantemente se está mostrando la alerta, hay forma de desahiblitarla? o una solución alternativa?

Gracias