No dió resultado mas bien quiero saber como puedo averiguar cuando un proceso ha comenzado a ejecutarse. Quiero intentarlo de otra forma.
Gracias.
controlclick con coordenadas
- Chefito
- Profesional del Autoit
- Mensajes: 2035
- Registrado: 21 Feb 2008, 18:42
- Ubicación: Albacete/Cuenca (España)
Re: controlclick con coordenadas
Mmmmm.....lo tendrás plegado. Vete a la parte de abajo de la ventana del Scite con el cursor y despliegalo hacia arriba.user0109 escribió:Lo probe pero no se muestra la consola
También te he dicho que puedes ver si llega a unos puntos con msgbox en vez de con consolewrite.
Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
- BasicOs
- Site Admin
- Mensajes: 2083
- Registrado: 21 Nov 2006, 19:24
- Ubicación: El Internet - (Canarias, España)
- Contactar:
Re: controlclick con coordenadas
El Au3Info es perfecto, pero aqui tienes otra herramienta más para inspeccionar controles, el Control Spy:
http://www.microsoft.com/downloads/deta ... n#Overview
Salu2:)
![:smt006](./images/smilies/006.gif)
http://www.microsoft.com/downloads/deta ... n#Overview
Salu2:)
Re: controlclick con coordenadas
Señores, gracias a Dios logré solucionar el problema mediante otro método, la clave es utilizar dos scripts en paralelo (al mismo tiempo), un script se encarga de iniciar la instalación, mientras que el otro se encarga de esperar a que se ejecute el famoso archivo de registro "registration.exe", una vez que aparece este ultimo en escena es atendido, es decir se encarga de automatizar el registro y finalmente cierra el proceso del script que se encargó de inicar la instalación (medio ortodoxo, pero resultó).
Si me permiten dejo los códigos de los dos scripts que me ayudaron a solucionar este problema:
Scritp para el inicio de la instalación (instalar.exe):
Run("Setup.exe")
Run("detectarproceso.exe")
WinWait("Untitled", "", 5)
Sleep(2000)
If WinActive("CorelDRAW(R) Graphics Suite 12", "Requisitos mínimos del sistema") Then
Send("o")
WinWaitActive("CorelDRAW Graphics Suite 12 - InstallShield Wizard", "Contrato de licencia")
Send("e")
Send("!s")
EndIf
If WinActive("CorelDRAW Graphics Suite 12 - InstallShield Wizard", "Contrato de licencia") Then
Send("e")
Send("!s")
EndIf
WinWaitActive("CorelDRAW(R) Graphics Suite 12", "Información del cliente")
ControlSend("CorelDRAW(R) Graphics Suite 12", "&Número de serie:", "Edit1", "DR12WEX")
ControlSend("CorelDRAW(R) Graphics Suite 12", "&Número de serie:", "Edit2", "1504397")
ControlSend("CorelDRAW(R) Graphics Suite 12", "&Número de serie:", "Edit3", "KTY")
Send("!s")
WinWaitActive("CorelDRAW(R) Graphics Suite 12", "Selección de idiomas")
Send("!e")
Send("!s")
WinWaitActive("CorelDRAW(R) Graphics Suite 12", "Instalación personalizada")
Send("o")
Send("!s")
WinWaitActive("Información")
Send("{Enter}")
WinWaitActive("CorelDRAW(R) Graphics Suite 12", "Carpeta de destino")
Send("!i")
Scritp para el registro (detectarproceso.exe):
WinWaitActive("Registro del producto", "Seleccione una de las siguientes opciones de registro:")
ControlClick("Registro del producto", "", 1)
WinWaitActive("Registro del producto")
ControlClick("Registro del producto", "", 1012)
ControlClick("Registro del producto", "", 1)
WinWaitActive("Registro del producto")
ControlClick("Registro del producto", "", 1)
WinWaitActive("CorelDRAW(R) Graphics Suite 12", "Finalizado InstallShield Wizard de CorelDRAW Graphics Suite 12")
Send("{SPACE}")
ProcessClose("instalar.exe")
Repito reconozco que es medio ortodoxo el metodo que he empleado pero en fin por lo pronto me ha ayudado a solucionar este problema
De todas maneras espero vuestros comentarios, sugerencias y criticas constructivas sobre este caso.
Nuevamente agradezco mucho la ayuda brindada por ustedes.
Saludos.![:smt001](./images/smilies/001.gif)
Si me permiten dejo los códigos de los dos scripts que me ayudaron a solucionar este problema:
Scritp para el inicio de la instalación (instalar.exe):
Run("Setup.exe")
Run("detectarproceso.exe")
WinWait("Untitled", "", 5)
Sleep(2000)
If WinActive("CorelDRAW(R) Graphics Suite 12", "Requisitos mínimos del sistema") Then
Send("o")
WinWaitActive("CorelDRAW Graphics Suite 12 - InstallShield Wizard", "Contrato de licencia")
Send("e")
Send("!s")
EndIf
If WinActive("CorelDRAW Graphics Suite 12 - InstallShield Wizard", "Contrato de licencia") Then
Send("e")
Send("!s")
EndIf
WinWaitActive("CorelDRAW(R) Graphics Suite 12", "Información del cliente")
ControlSend("CorelDRAW(R) Graphics Suite 12", "&Número de serie:", "Edit1", "DR12WEX")
ControlSend("CorelDRAW(R) Graphics Suite 12", "&Número de serie:", "Edit2", "1504397")
ControlSend("CorelDRAW(R) Graphics Suite 12", "&Número de serie:", "Edit3", "KTY")
Send("!s")
WinWaitActive("CorelDRAW(R) Graphics Suite 12", "Selección de idiomas")
Send("!e")
Send("!s")
WinWaitActive("CorelDRAW(R) Graphics Suite 12", "Instalación personalizada")
Send("o")
Send("!s")
WinWaitActive("Información")
Send("{Enter}")
WinWaitActive("CorelDRAW(R) Graphics Suite 12", "Carpeta de destino")
Send("!i")
Scritp para el registro (detectarproceso.exe):
WinWaitActive("Registro del producto", "Seleccione una de las siguientes opciones de registro:")
ControlClick("Registro del producto", "", 1)
WinWaitActive("Registro del producto")
ControlClick("Registro del producto", "", 1012)
ControlClick("Registro del producto", "", 1)
WinWaitActive("Registro del producto")
ControlClick("Registro del producto", "", 1)
WinWaitActive("CorelDRAW(R) Graphics Suite 12", "Finalizado InstallShield Wizard de CorelDRAW Graphics Suite 12")
Send("{SPACE}")
ProcessClose("instalar.exe")
Repito reconozco que es medio ortodoxo el metodo que he empleado pero en fin por lo pronto me ha ayudado a solucionar este problema
De todas maneras espero vuestros comentarios, sugerencias y criticas constructivas sobre este caso.
Nuevamente agradezco mucho la ayuda brindada por ustedes.
Saludos.
![:smt001](./images/smilies/001.gif)
- Ximorro
- Profesional del Autoit
- Mensajes: 1500
- Registrado: 10 Jul 2009, 12:35
- Ubicación: Castellón, España
Re: controlclick con coordenadas
Hombre, si el objeto de WinWait("Untitled", "", 5) es que se espere 5 segs, para eso pones directamente Sleep(5000)...
La consola la puedes ver si ejecutas el programa desde una ventana de DOS, o quizás más cómodamente si usas Scite para desarrollar el programa.
La consola la puedes ver si ejecutas el programa desde una ventana de DOS, o quizás más cómodamente si usas Scite para desarrollar el programa.
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)