Hola, creo que mi problema es sencillo de resolver, pero aun así no doy con la tecla.
Necesito alguna funcion que pueda diferenciar una pantalla de otra (todas con el mismo titulo de ventana) y una vez reconocida se enviaría una tecla u otra (Avanzar pantalla, imprimir pantalla, retroceder, etc).
Empece probando la funcion WinGetText, pero solo funciona cuando la pantalla es una archivo de texto del tipo bloc de notas, pero con otro tipo de pantallas no reconocia el texto.
Estoy intentandolo con la funcion PixelGetColor, de manera que se puedan diferenciar buscando diferencias en algun pixel concreto, pero esto es un poco complicado e inseguro, pero si no hay otra manera pues lo tendré que intentar asi.
En fin espero que algun experto me pueda echar una mano. Muchas gracias a todos.
Reconocimiento de distintas pantallas
- Chefito
- Profesional del Autoit
- Mensajes: 2035
- Registrado: 21 Feb 2008, 18:42
- Ubicación: Albacete/Cuenca (España)
Re: Reconocimiento de distintas pantallas
Mmmmmm.....esto te va a ser dificil si lo quieres hacer realmente bien. De pregunta sencilla no tiene nada. Yo, personalmente no conozca nada directo en AutoIt que haga cosas de estas. Si lo que hablas son de distingir dos monitores, tendrás que intentarlo con apis. Mira éstas de microsoft: http://msdn.microsoft.com/en-us/library ... S.85).aspx
Tendrías que implementarlas para poder utilizarlas. Debes tener algo de experiencia para hacer estas cosas.
También podrías ingeniartelas para reconocerla de algún otro modo más facil. Aunque si son totalmente iguales, con las mismas ventanas, iconos, etc, mal rollo para hacerlo así.
Saludos.
Tendrías que implementarlas para poder utilizarlas. Debes tener algo de experiencia para hacer estas cosas.
También podrías ingeniartelas para reconocerla de algún otro modo más facil. Aunque si son totalmente iguales, con las mismas ventanas, iconos, etc, mal rollo para hacerlo así.
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 ;).
Re: Reconocimiento de distintas pantallas
Chefito, para empezar muchas gracias por responder.
La solucion que me das, como tu bien dices es para personas mas expertas, y ese desgraciadamente no es mi caso.
De todas formas te dire que las distintas pantallas no son iguales, contienen texto que va cambiando segun se va accediento a una informacion u otra y segun que informacion haya necesito imprimirla o avanzar o retroceder etc., pero el problema es reconocer ese texto que yo le pueda decir al programa que si existe una determinada palabra haga una cosa u otra.
De todas formas lo dicho, muchas gracias por tu ayuda
La solucion que me das, como tu bien dices es para personas mas expertas, y ese desgraciadamente no es mi caso.
De todas formas te dire que las distintas pantallas no son iguales, contienen texto que va cambiando segun se va accediento a una informacion u otra y segun que informacion haya necesito imprimirla o avanzar o retroceder etc., pero el problema es reconocer ese texto que yo le pueda decir al programa que si existe una determinada palabra haga una cosa u otra.
De todas formas lo dicho, muchas gracias por tu ayuda
- Ximorro
- Profesional del Autoit
- Mensajes: 1500
- Registrado: 10 Jul 2009, 12:35
- Ubicación: Castellón, España
Re: Reconocimiento de distintas pantallas
Creo que aquí hay una confusión, igual soy yo el que se equivoca pero más que distinguir monitores, con "pantallas" te refieres a las ventanas de un programa concreto ¿no?
Por ejemplo como si tuvieras varios Notepad abiertos con texto dentro, y por lo que sea el título de las ventanas es el mismo con lo que sólo se pueden distinguir por ese texto...
Si es eso sí se puede, aunque la cosa pasa por llegar al control que contiene ese texto, extraerlo, buscar la palabra que quieres... En Notepad es relativamente sencillo, el control que contiene el texto es un control estándar de Windows y se puede capturar. Si las ventanas que estás mirando también están formadas por controles estándar probablemente se podrá hacer lo que dices, si no lo están puede ser bastante más difícil aunque puede haber alternativas (por ejemplo si no se puede leer el texto de un navegador, se puede bajar el html directamente a AutoIt y analizarlo sin ayuda del navegador...)
Explícanos la cosa con un poco más de detalle, a ver al menos de qué tipo de programa estamos hablando.
O si con "pantallas" te referías a "monitores"... entonces olvida todo lo que he dicho
Por ejemplo como si tuvieras varios Notepad abiertos con texto dentro, y por lo que sea el título de las ventanas es el mismo con lo que sólo se pueden distinguir por ese texto...
Si es eso sí se puede, aunque la cosa pasa por llegar al control que contiene ese texto, extraerlo, buscar la palabra que quieres... En Notepad es relativamente sencillo, el control que contiene el texto es un control estándar de Windows y se puede capturar. Si las ventanas que estás mirando también están formadas por controles estándar probablemente se podrá hacer lo que dices, si no lo están puede ser bastante más difícil aunque puede haber alternativas (por ejemplo si no se puede leer el texto de un navegador, se puede bajar el html directamente a AutoIt y analizarlo sin ayuda del navegador...)
Explícanos la cosa con un poco más de detalle, a ver al menos de qué tipo de programa estamos hablando.
O si con "pantallas" te referías a "monitores"... entonces olvida todo lo que he dicho
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
Re: Reconocimiento de distintas pantallas
Gracias por la ayuda.
Ya he conseguido solucionar el problema a base de distinguir entre unos pixels y otros, dependiendo de estos pixels el programa sabe si está en una pagina u otra y por tanto realizar una acción u otra.
Repito muchas gracias a todos.
Ya he conseguido solucionar el problema a base de distinguir entre unos pixels y otros, dependiendo de estos pixels el programa sabe si está en una pagina u otra y por tanto realizar una acción u otra.
Repito muchas gracias a todos.
- Ximorro
- Profesional del Autoit
- Mensajes: 1500
- Registrado: 10 Jul 2009, 12:35
- Ubicación: Castellón, España
Re: Reconocimiento de distintas pantallas
Bueno, pues gracias... aunque al final no nos hemos enterado realmente de cuál era el problema
¿Qué eran, páginas web?
Bueno, me alegro de que lo hayas solucionado.
¿Qué eran, páginas web?
Bueno, me alegro de que lo hayas solucionado.
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)