Diferenciar ventanas

Pregunta Sin Miedo no te cortes cualquier cosa para empezar - Autoit se comienza facilmente.Para Ordenes o Comandos sueltos. Ver nota como preguntar.
Responder
Avatar de Usuario
Bethory
Mensajes: 13
Registrado: 11 Feb 2009, 20:24

Diferenciar ventanas

Mensaje por Bethory »

Buen dia: ante todo felices pascuas y feliz nuevo año :smt006
Mi objetivo en esta ocasión es hacer un script que diferencie dos instancias (ventanas) de la misma aplicación. El problema radica en que todas las ventanas tienen como Title "Lineage II" por lo tanto no puedo diferenciarlas correctamente
mi pregunta es ¿existe alguna alternativa para reconocer ventanas?
adjunto el sumario arrojado por AutoIT win info

>>>> Window <<<<
Title: Lineage II
Class: L2UnrealWWindowsViewportWindow
Position: 463, 218
Size: 1296, 758
Style: 0x14CF0000
ExStyle: 0x00040100
Handle: 0x00000000001103B2

>>>> Control <<<<
Class:
Instance:
ClassnameNN:
Name:
Advanced (Class):
ID:
Text:
Position:
Size:
ControlClick Coords:
Style:
ExStyle:
Handle:

>>>> Mouse <<<<
Position: 1500, 240
Cursor ID: 0
Color: 0xFFFEE8

>>>> StatusBar <<<<

>>>> ToolsBar <<<<

>>>> Visible Text <<<<


>>>> Hidden Text <<<<
Me gustaría arreglar el mundo.... pero no me han dado el código fuente xD
Avatar de Usuario
BasicOs
Site Admin
Mensajes: 2085
Registrado: 21 Nov 2006, 19:24
Ubicación: El Internet - (Canarias, España)
Contactar:

Re: Diferenciar ventanas

Mensaje por BasicOs »

JEJE,
La pregunta es obvia en que se diferencian tus ventanas?
Si tienen los pixeles diferentes puedes además del titulo dentro de un IF THEN, hacer una comprobación del pixel, aunque hay más maneras por ejemplo la posición relativa de la ventana en la pantalla, etc..
Si puedes hacer un jpg para verlas puede ser más facil.
El Info del Autoit de da información para diferenciar las ventanas pero si no se diferencian tienes que buscar otras herramientas que también tiene autoit, como nombres de los procesos.exe, posición, tamaño, pixeles, etc.... y muchas otras cosas , algo que ya te da el sistema operativo,
Feliz y prospero año 2011
Salu22:)
Avatar de Usuario
Bethory
Mensajes: 13
Registrado: 11 Feb 2009, 20:24

Re: Diferenciar ventanas

Mensaje por Bethory »

Gracias por tu atención BasicOs :smt001

la solución a mi problema fue guardar en una variable el identificador interno de la ventana con la instrucción "WinGetHandle"
adjunto un pequeño código de ejemplo
AutoItSetOption("WinTitleMatchMode", 4)
Run("notepad.exe")
Sleep(800)
$ventana = WinGetHandle("Sin título:", "")
Send($ventana)
ConsoleWrite("-" & $ventana & @CRLF)
creditos y agradecimientos a mi amigo, usuario de esta comunidad gesher
Me gustaría arreglar el mundo.... pero no me han dado el código fuente xD
Avatar de Usuario
BasicOs
Site Admin
Mensajes: 2085
Registrado: 21 Nov 2006, 19:24
Ubicación: El Internet - (Canarias, España)
Contactar:

Re: Diferenciar ventanas

Mensaje por BasicOs »

Gracias por compartir tu CODE !!!
Salu22:)
Responder