Página 1 de 1

Reconocimiento de distintas pantallas

Publicado: 20 Sep 2009, 20:11
por pachasqui
Hola, creo que mi problema es sencillo de resolver, pero aun así no doy con la tecla. :smt024
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. :smt009
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. :smt006

Re: Reconocimiento de distintas pantallas

Publicado: 21 Sep 2009, 00:10
por Chefito
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.

Re: Reconocimiento de distintas pantallas

Publicado: 21 Sep 2009, 16:01
por pachasqui
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. :smt005
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 :smt039

Re: Reconocimiento de distintas pantallas

Publicado: 23 Sep 2009, 08:43
por Ximorro
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 :smt002

Re: Reconocimiento de distintas pantallas

Publicado: 03 Oct 2009, 20:27
por pachasqui
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. :smt038

Re: Reconocimiento de distintas pantallas

Publicado: 05 Oct 2009, 09:30
por Ximorro
Bueno, pues gracias... aunque al final no nos hemos enterado realmente de cuál era el problema :smt002

¿Qué eran, páginas web?

Bueno, me alegro de que lo hayas solucionado.