Page 1 sur 1

[R] Détection de fenêtre avec envoi de message

Posté : mer. 27 août 2008 10:20
par arckosfr
Voila j'aimerais un script qui me trouve une fenetre (pre definie) et c'est une console (serveur)
et qu'il envoi la commande "saveall" dans cette console genre toute les 1 min est ce possible?

Merci

Re: [..]Detection de fenetreavec envoi de message

Posté : mer. 27 août 2008 11:22
par jbnh
Tu prends ton Autoit Windows Info, tu cherches la classe ou l'instance ou le titre de ta fenêtre et tu fais:

Code : Tout sélectionner

WinActivate("[CLASS:xxxxxx]", "")
ou

Code : Tout sélectionner

WinActivate("[TITLE: xxxxxx]", "")
Ensuite un bête Send.

Et tu mets tout çà entre:

Code : Tout sélectionner

while 1

xxxxxxxxxx
sleep(60000)

wend

Re: [..] Détection de fenêtre avec envoi de message

Posté : mer. 27 août 2008 12:02
par Tlem
@arckosfr
Ne serait-il pas plus simple d'envoyer directement la commande par autoIt ?
AutoIt peut lancer des commandes DOS dans une console donc au lieu de passer par cette console déjà ouverte, il pourrait être plus simple d'automatiser la commande directement dans un script sans passer par une console 'externe'.

Re: [..] Détection de fenêtre avec envoi de message

Posté : mer. 27 août 2008 12:08
par arckosfr
il ecrit pas dans la fenetre :s que je veut il ecrit dans celle active :s

Code : Tout sélectionner

#include <GUIConstants.au3>

while 1
WinActivate("[TITLE: C:WowServ\Core 6412 par Omen\mangosd.exe]", "")
send (" saveall ")
sleep(6000)

wend
et le faite 'est que c'est une console pour un serveur vous l'aurer comprit avec si tu a une solution je suis ouvert a tout ^^

Re: [..] Détection de fenêtre avec envoi de message

Posté : mer. 27 août 2008 12:31
par Tlem
En fait, je vois que c'est le logiciel Mangosd.exe qui vous fait cette console.
Comme je ne le connais pas, je ne sais pas si on peut enchainer les commandes.

Donc pour rester simple, essayez ceci :

Code : Tout sélectionner

HotKeySet("!x", "Terminate") ; ALT + X pour quitter le script.

While 1
    WinActivate("C:WowServ\Core 6412 par Omen\mangosd.exe", "")
    Send("saveall")
    Send("{ENTER}")
    Sleep(60000) ; 60 Secondes
WEnd

Func Terminate()
    Exit
EndFunc   ;==>Terminate

Re: [..] Détection de fenêtre avec envoi de message

Posté : mer. 27 août 2008 13:16
par arckosfr
j'ai ajouter un scren de mon ecran avec la console en question parce que il detecte pas il ecrit dans la fenetre active e comprend pas pourquoi :s

Re: [..] Détection de fenêtre avec envoi de message

Posté : mer. 27 août 2008 13:24
par jbnh
Je comprend plus, il doit écrire dans la console, c'est quoi le problème. Il écrit ou? quelle fenêtre active?

Re: [..] Détection de fenêtre avec envoi de message

Posté : mer. 27 août 2008 13:40
par arckosfr
le script normalement devrait toute les 60 seconde mettre la console en fenetre active et ecrire saveall et faire entrer
mais le probleme c'est que le script de detecte pas la fenetre donc il fait la commande saveall et entrer dans la fenetre active que j'ai activer moi meme genre msn ou autre mais pas la mangosd.exe

Re: [..] Détection de fenêtre avec envoi de message

Posté : mer. 27 août 2008 14:02
par jbnh
WinActivate("[TITLE: C:WowServ\Core 6412 par Omen\mangosd.exe]", "")
c'est wow-serv

Re: [..] Détection de fenêtre avec envoi de message

Posté : mer. 27 août 2008 15:05
par arckosfr
Sa ne change pas :s

Re: [..] Détection de fenêtre avec envoi de message

Posté : mer. 27 août 2008 15:48
par Tlem
Quelles fautes d'innatention avons nous tous fait. :oops:

Non seulement c'est Wow-Serv au lieu de WowServ, mais en plus il manque l'antislash après les deux points de C: :P

Ce qui nous donne :

Code : Tout sélectionner

HotKeySet("!x", "Terminate") ; ALT + X pour quitter le script.

While 1
    WinActivate("C:\Wow-Serv\Core 6412 par Omen\mangosd.exe", "")
    Send("saveall")
    Send("{ENTER}")
    Sleep(60000) ; 60 Secondes
WEnd

Func Terminate()
    Exit
EndFunc   ;==>Terminate
et là ca doit marcher. :mrgreen:

Sinon, vous pouvez aussi utiliser le type Class renvoyé par AutoIt Windows Info comme ceci :

Code : Tout sélectionner

WinActivate("[CLASS:Class renvoyé par AutoIt Windows Info]", "")

Re: [..] Détection de fenêtre avec envoi de message

Posté : mer. 27 août 2008 16:45
par arckosfr
Voila enfaite y'vait ces erreur la effectivement mais en plus apres sa ne marcher pas et enfaite c'etait du a l'espace entre TITLE: C:
qui fesait que sa marchait pas mais mnt tout fonctionne merci encore ^^

ps: tu peut me tutoyer ^^