Página 1 de 1

ayuda para mover aplicaciones

Publicado: 11 Jun 2013, 23:25
por mikeeps2
hola a todos , tengo varios script para abrir varias aplicaciones de windows , que yo la abro atraves de otro programa , y necesito que dichas aplicaciones caigan en un lugar de la pantalla especifico , como puedo hacer eso , teniendo en cuanta que mi pantalla es de 800x600 , pero en si donde debe caer tendria 800x500

los script para abrir son


Run("control.exe ncpa.cpl") para abrir networks

Run("control.exe netsetup.cpl") para abrir wireless

Run("control.exe desk.cpl") para display prepiedades

Run("explorer.exe") para windows explorer

Re: ayuda para cerrar aplicaciones

Publicado: 11 Jun 2013, 23:54
por Dany
podrias hacer algo así:

Código: Seleccionar todo

Run("control.exe ncpa.cpl")
WinWait("[CLASS:CabinetWClass]")
WinMove("[CLASS:CabinetWClass]", "", 0, 0, 200, 200)


PD: este es para XP. debes buscar tu class respectivo.
saludos

Re: ayuda para mover aplicaciones

Publicado: 12 Jun 2013, 01:12
por mikeeps2
ah dejame provar , si yo tengo xp en la computadora que deseos usar estas aplicaciones , muchas gracias

Re: ayuda para mover aplicaciones

Publicado: 12 Jun 2013, 05:28
por mikeeps2
hola dany me funciono perfecto lo queme distes , claro solo ese serviria para el network , para los otros 3 , estuve buscando eso del class , pero lo que encontre no me funciuono , supuestamente el class dice ser el 32770 , bueno eso fue lo que entendi pero lo prove igual pero no me funciono , tu sabes el class para estos 3


Run("control.exe netsetup.cpl") para abrir wireless

Run("control.exe desk.cpl") para display prepiedades

Run("explorer.exe") para windows explorer

Re: ayuda para mover aplicaciones

Publicado: 12 Jun 2013, 05:48
por mikeeps2
bueno dany buscando y buscando di con esto , y me trabaja , de todas maneras chequeame si esta correcto asi


para explorer

Run("explorer.exe")
WinWait("Libraries")
WinMove("Libraries", "", 0, 70, 800, 500)

para wireless

Run("control.exe netsetup.cpl")
WinWait("Set Up a Network")
WinMove("Set Up a Network", "", 0, 70, 800, 500)

para display

Run("control.exe desk.cpl")
WinWait("Screen Resolution")
WinMove("Screen Resolution", "", 0, 70, 800, 500)

Re: ayuda para mover aplicaciones

Publicado: 12 Jun 2013, 05:55
por Dany
tiene que ser así:

Código: Seleccionar todo

Run("explorer.exe")
WinWait("[CLASS:ExploreWClass]")
WinMove("[CLASS:ExploreWClass]", "", 0, 70, 800, 500)



Run("control.exe netsetup.cpl")
WinWait("[CLASS:#32770]")
WinMove("[CLASS:#32770]", "", 0, 70, 800, 500)



Run("control.exe desk.cpl")
WinWait("[CLASS:#32770]")
WinMove("[CLASS:#32770]", "", 0, 70, 800, 500)

EDITO:

Como lo pusiste tambien se puede con el titulo de la ventana.
saludos.

Re: ayuda para mover aplicaciones

Publicado: 12 Jun 2013, 06:30
por mikeeps2
dany , como lo pusistes yo lo habia provado , y me abre pero no se me mueve para donde yo quiero 0,70 , se me queda en el medio de la pantalla , de la manera que lo hice ahi si se me mueve para donde yo le diga .. pero esta bien como lo tengo no , para ya cerrar los script y seguir adelante .... muchas gracias

Re: ayuda para mover aplicaciones

Publicado: 12 Jun 2013, 08:38
por Chefito
Muchas veces no nos interesa hacerlo por títulos o por instancia a la clase porque es una clase común, como puede ser este tipo. Por fortuna autoit nos brinda la oportunidad de trabajar con una ventana y referirnos a esta de muchas maneras. Tenéis que mirar el tema en la ayuda llamado Window Titles and Text (Advanced).
Un trozo de texto muy interesante de este tema:
Advanced Window Descriptions
A special description can be used as the window title parameter. This description can be used to identify a window by the following properties:

TITLE - Window title
CLASS - The internal window classname
REGEXPTITLE - Window title using a regular expression (if the regular expression is wrong @error will be set to 2)
REGEXPCLASS - Window classname using a regular expression (if the regular expression is wrong @error will be set to 2)
LAST - Last window used in a previous AutoIt command
ACTIVE - Currently active window
X \ Y \ W \ H - The position and size of a window
INSTANCE - The 1-based instance when all given properties match
Con esto podemos ver que podemos instanciar a la ventana por ejemplo con last (última ventana usada con un comando autoit), con active (ventana activa), etc, incluso si la clase se repite, podemos instanciar la que nos interesa gracias a instance. Ni que decir tiene que podemos utilizar varias propiedades. Mirarlo en la ayuda y ver los ejemplos.

Saludos.