Page 1 sur 1

[..] Aide à la création d'un script

Posté : mar. 06 sept. 2011 13:59
par pyrah
Bonjour,

Voila je vous expose mon problème :

Je débute dans la programmation avec autoit, je suis entrain de créer un script pour automatiser les connexions sur les différent serveur de mon entreprise.

Voici le code :

Code : Tout sélectionner

$pass = "le_mdp"
$input = InputBox("Autoconnect V1", "Entrez le mot de passe pour se connecter au poste dsdgdm137 :")

If ($input <> $pass) Then
    MsgBox(0,"Autoconnect V1", "Mauvais mot de passe !")
Else
    ShellExecute ("vncviewer_original.exe")
    WinWaitActive("[CLASS:#32770]")
    Send("nom_du_serveur")
    MouseClick ( "left", 549, 521 )
    send("{ENTER}")
    WinWaitActive("[CLASS:#32770]")
    MouseClick ( "left", 541, 360 )
    Send("mot_de_passe_du_serveur_vnc")
    send("{ENTER}")
EndIf
Je me suis vite rendus compte que d'utiliser la fonction : MouseClick ( "left", 549, 521 ) était vite erroné avec ce type script car selon la résolution ou la position de la fenêtre tout deviens faux ...

En consultant l'aide de Autoit 3 j'ai trouver cette fonction : ControlClick("My Window", "", "[CLASS:Button; TEXT:Finish; INSTANCE:2]")
Par contre quand je remplace la fonction MouseClick par la controlClick j'obtiens un message d'erreur :
"error line 9 - Incorrect number of parameters in function call"

Pouvez vous m'aidez pour l'élaboration du script ?

Le numéro d'instance est le : 8

Image

merci d'avance

Re: [..]Aide à la création d'un script

Posté : mar. 06 sept. 2011 14:15
par Iste
Avez vous jeté un coup d'oeil a cette page : http://www.ultravnc.fr/install/cmdline.html ?

Si j'ai bien saisi votre probleme, vous n'aurez pas besoin d'AutoIt.

Re: [..] Aide à la création d'un script

Posté : mar. 06 sept. 2011 14:38
par Tlem
+1.
Nul besoin d'AutoIt pour utilider UltraVNC et faire une connexion !!!

Re: [..] Aide à la création d'un script

Posté : mar. 06 sept. 2011 16:53
par pyrah
Re bonjour,

Je développe un peu plus ma demande.

Ce que je souhaite faire en plus de la connexion c'est l'authentification "windows" qui elle ne peut être automatiser avec les fonctions de UVNC. Je souhaite automatiser un maximum mon travail ayant une grande quantité de serveurs ou je me connecte avec des users et mot de passe différents.. Voila pourquoi je ne souhaite avoir que un seul icone qui feras l'action au lieux de deux (un icone pour lancer UVNC avec les options et un autre icone pour lancer le script de connexion) ...

Voila voila merci d'avance pour vos réponses.

Re: [..] Aide à la création d'un script

Posté : mar. 06 sept. 2011 16:59
par Iste
Et bien au début de votre script placez un shellexecute() qui lancera le client avec les paramètres !

Re: [..] Aide à la création d'un script

Posté : mar. 06 sept. 2011 18:16
par Tlem
Effectivement, vu comme ceci c'est un petit peut différent.
Vous pouvez effectivement créer votre propre outil de gestion de connexion VNC, sinon, je vous conseil ceci : http://remotedesktopmanager.com/

Gratuit et performant et compatible avec beaucoup d'autres outils !!! :mrgreen:

Maintenant si vous tenez à le faire en AutoIt, pas de problème. Dressez un cahier des charges de ce que l'outil devra être capable de faire et commencez la construction de l'interface graphique. Pour le reste posez vos questions, on fera de notre mieux.

Re: [..] Aide à la création d'un script

Posté : jeu. 08 sept. 2011 22:09
par Baku
pyrah a écrit : Je me suis vite rendus compte que d'utiliser la fonction : MouseClick ( "left", 549, 521 ) était vite erroné avec ce type script car selon la résolution ou la position de la fenêtre tout deviens faux ...
On peut toujours bidouiller, avec la fonction WinGetPos par exemple :)
Le milieu de la combobox (là où il faudrait cliquer) se trouve approximativement aux coordonnées (32,105) de la fenêtre "Client UltraVnc [...]".

Avec ca, bah vous avez juste à faire un truc du genre :

Code : Tout sélectionner

$ClientVNCpos = WinGetPos("Client UltraVnc Fr - Connexion 105")
$xClic = $ClientVNCpos[0] + 32
$yClic = $ClientVNCpos[1] + 105
 
Et hop, on a la position relative à l'emplacement de la fenêtre sur l'écran ;)

Re: [..] Aide à la création d'un script

Posté : sam. 10 sept. 2011 23:31
par mikell
pyrah a écrit :"error line 9 - Incorrect number of parameters in function call"
ça ressemble à une simple erreur de syntaxe... mais puisqu'il s'agit de cocher un bouton radio, faudrait plutôt essayer

Code : Tout sélectionner

ControlCommand("[CLASS:#32770]", "", "[CLASS:Button; INSTANCE:8]", "Check", "")
De même pour limiter les risques d'erreur vaudrait mieux utiliser un ControlSend ou un ControlSetText au lieu de Send("nom_du_serveur")