Transferir datos entre dos GUI de Windows

Tengo dos versiones de un programa de Windows que se usa para administrar la información de los empleados. Este programa es operado por GUI. La versión anterior del programa está llena de datos y me gustaría transferir estos datos a la nueva versión. El proveedor del software quiere cobrarme por esta transferencia, así que me gustaría ver si puedo hacerlo yo mismo. ¿Hay algún software que pueda ayudarme a escribir un robot para esto?

Esto debería ser algo que pueda buscar en una ventana un texto determinado, como "nombre" y luego hacer clic en la ventana relativa a esa ubicación de texto para copiar el nombre en el portapapeles.

En orden de preferencia, me gustaría una biblioteca con la que se pueda hablar desde:
Python, Java, C++

He usado Sikuli antes, pero no creo que tenga las capacidades de búsqueda de texto que necesito.

Debe tener algún tipo de base de datos que contenga todos los datos. ¿Puedes intentar localizarlo para ambos programas? Entonces, migrar sería solo una cuestión de transferir los datos entre ellos. Mucho más fácil que jugar con la GUI.
Sí, los datos se guardan en una base de datos sql, pero el esquema es totalmente incomprensible, ya que en su arduo trabajo para deducir la tabla y la columna que llena cualquier campo en particular.

Respuestas (2)

La biblioteca de Python pywinauto puede ayudarte. Si el programa tiene controles nativos (escritos con MFC, WTL o similar; algunas aplicaciones de WinForms pueden automatizarse), eso es lo que necesita. No dude en hacer preguntas más detalladas sobre pywinauto en la etiqueta StackOverflow . Soy uno de los mantenedores de pywinauto.

También hay un asistente de GUI simple para pywinauto: SWAPY . Puede mostrar rápidamente qué controles son visibles para pywinauto.

En la página de documentación de pywinauto, también enumera un montón de otros proyectos similares:

Herramientas de Python:

Otras herramientas de lenguaje de secuencias de comandos:

Otras herramientas gratuitas: