[R] Controler un logiciel via un port ?

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
Yoyo86220
Niveau 6
Niveau 6
Messages : 238
Enregistré le : mer. 12 mars 2008 21:47
Status : Hors ligne

[R] Controler un logiciel via un port ?

#1

Message par Yoyo86220 »

Bonsoir,

Donc voilà j'ai un logiciel ou je ne peux utiliser aucune de ces fonctions:
-ControlClick
-ControlSend ou autre...
Donc je ne peu pas l'automatiser...

mais cette application dispose d'une checkbox ou quand on la coche on peu entré un port de control et password de control... et j'ai déjà utilisé un autre programme qui utilise ce procédé pour contrôler ce programme... es que quelqu'un à une petite idée et es que ceci reste possible avec AutoIt?
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11796
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Controler un logiciel via un port?

#2

Message par Tlem »

A première vue je dirais que c'est possible.
AutoIt saura envoyer des commandes par un port de com, mais encore faut-il connaitre les commandes disponible et sous quelle forme il faut les envoyées.
Il restera votre problème de la case à cochée et le login.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
Yoyo86220
Niveau 6
Niveau 6
Messages : 238
Enregistré le : mer. 12 mars 2008 21:47
Status : Hors ligne

Re: [..] Controler un logiciel via un port?

#3

Message par Yoyo86220 »

Youhou j'ai trouvé donc je dis la solution pour toutes les personnes qui en auront besoin

Il faut aller dans Démarrer>Exécuter>(tapez)telnet 127.0.0.1 PORT-DU-LOGICIEL>(dans la fenêtre CMD qui va apparaitre tapez le MDP) MDP>(puis pour avoir toutes les commandes dispo tapez) /? (puis ENTRER)

Petite autre question...:
Comment peut-on utilisé dans commande CMD sans quel soit vu par l'utilisateur? car dans ce cas c'est loin d'être très Design...
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11796
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Controler un logiciel via un port?

#4

Message par Tlem »

Ouvrez votre interpréteur de commande en mode caché (@SW_HIDE). ;)
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
L4crymal
Niveau 8
Niveau 8
Messages : 513
Enregistré le : mer. 24 sept. 2008 14:53
Status : Hors ligne

Re: [..] Controler un logiciel via un port?

#5

Message par L4crymal »

Ca existe sur Vista ? car je ne trouve pas telnet ...
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11796
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Controler un logiciel via un port?

#6

Message par Tlem »

En tapant simplement : vista telnet dans Google, j'ai ce premier lien qui est sortit : http://www.commentcamarche.net/faq/suje ... sous-vista

Essayez d'utiliser un peut plus les outils qui sont à votre disposition. :evil:
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
Yoyo86220
Niveau 6
Niveau 6
Messages : 238
Enregistré le : mer. 12 mars 2008 21:47
Status : Hors ligne

Re: [..] Controler un logiciel via un port?

#7

Message par Yoyo86220 »

Re-Bonjour,

Donc il y a un truc que je ne comprends pas bien voici mon problème:

Run(@ComSpec&" /c "&'telnet 127.0.0.1 3200',"", @SW_HIDE)

voilà ma boite de dialog Telnet est établi mais maintenant comment je fais pour envoyer des commande dans cette boite de dialog ? :s

somme nous obligé de passer par ControlSend ?
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11796
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Controler un logiciel via un port?

#8

Message par Tlem »

Ceci devrait vous donner une idée de comment inter-agir avec une fenêtre de commande (qu'elle soit visible ou non) : http://www.autoitscript.com/forum/index ... t&p=379346
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
Yoyo86220
Niveau 6
Niveau 6
Messages : 238
Enregistré le : mer. 12 mars 2008 21:47
Status : Hors ligne

Re: [..] Controler un logiciel via un port?

#9

Message par Yoyo86220 »

Donc logiquement le code suivant devrai marcher mais pour moi CMD s'ouvre bien mais rien se passe je comprends pas pourquoi :s

je mis suis surement mal prie...?
► Afficher le texte
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11796
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Controler un logiciel via un port?

#10

Message par Tlem »

Ce n'est pas CMD qu'il faut lancer, mais telnet ...
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
Yoyo86220
Niveau 6
Niveau 6
Messages : 238
Enregistré le : mer. 12 mars 2008 21:47
Status : Hors ligne

Re: [..] Controler un logiciel via un port?

#11

Message par Yoyo86220 »

oui je suis tout a fait d'accord je viens de le faire mais dans tous les cas sa reviens au mm car le script m'ouvre bien la boite de "dialog" Telnet mais rien ne s'écrie à l'intérieur rien du tout

Voici les différente combinaison que j'ai essayé:
► Afficher le texte
Avatar du membre
Yoyo86220
Niveau 6
Niveau 6
Messages : 238
Enregistré le : mer. 12 mars 2008 21:47
Status : Hors ligne

Re: [..] Controler un logiciel via un port?

#12

Message par Yoyo86220 »

Personne à d'explication pour mon problème?

Svp je voudrai juste savoir si le problème vient de moi ou de mon PC si j'ai fais quelque chose de travers ou pas... :s

merci de m'aider.
Avatar du membre
Yoyo86220
Niveau 6
Niveau 6
Messages : 238
Enregistré le : mer. 12 mars 2008 21:47
Status : Hors ligne

Re: [..] Controler un logiciel via un port?

#13

Message par Yoyo86220 »

Bon à mon avis personne doit savoir :s

voilà quand je rajoute cette fonction "$STDIN_CHILD" la fenêtre telnet s'ouvre et se ferme aussi tôt ... quand elle n'y est pas la feunetre reste ouverte mais rien ne s'écrie dans la fenêtre...

SVP j'ai vraiment besoin d'aide... :(

si quelqu'un peu essayer, et me dire si ça marche chez lui? un truc simple du style:

Code : Tout sélectionner

Local $foo = Run("telnet.exe", @SystemDir, @SW_MAXIMIZE, $STDIN_CHILD)
Local $line

StdinWrite($foo,"o 127.0.0.1 "& @CRLF)
StdinWrite($foo)
$line = StdoutRead($foo)
MsgBox(0, "STDOUT read:", $line)
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11796
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Controler un logiciel via un port?

#14

Message par Tlem »

Je trouve que vous ne cherchez pas beaucoup ...
Si cette méthode ne fonctionne pas, essayez en une autre. :P

Code : Tout sélectionner

$ip = '127.0.0.1'
$TelnetWin = 'Telnet ' & $ip
$userlogin = 'login'
$passlogin = 'passwd'

$pid = Run(@ComSpec & " /k " & $TelnetWin, "", @SW_SHOW)
If @error Then Exit MsgBox(16, "Erreur PID", $pid)

_MyCmdToTelnet('o', '800') ; Commande pour le telnet de XP qui demande une confirmation
_MyCmdToTelnet($userlogin, '500')
_MyCmdToTelnet($passlogin, '1000')
_MyCmdToTelnet('DIR', '1500')
_MyCmdToTelnet('CD ..', '1500')
_MyCmdToTelnet('DIR', '1500')
_MyCmdToTelnet('commande_non_reconnue', '4500')
_MyCmdToTelnet('EXIT', '500')

WinClose('Telnet ' & $ip)

Func _MyCmdToTelnet($Cmd, $Pause)
    WinWaitActive($TelnetWin)
    ControlSend($TelnetWin, "", "", $Cmd & '{ENTER}')
    Sleep($Pause)
EndFunc   ;==>_MyCmdToTelnet
Il n'y à bien sur aucune interactivité, mais c'est un début.
Si vous voulez contrôler ce qui ce passe, se sera un peut plus compliqué car il faudra utiliser le paramètre -f pour créer un fichier journal, et annalyser celui-ci pendant l'envois des commandes.

Voilà, le chemin est tracé, à vous de faire le reste.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
Yoyo86220
Niveau 6
Niveau 6
Messages : 238
Enregistré le : mer. 12 mars 2008 21:47
Status : Hors ligne

Re: [..] Controler un logiciel via un port?

#15

Message par Yoyo86220 »

:s

je viens de trouver cette solution qui marche :

Code : Tout sélectionner

TCPStartup()
   
Dim $router_IP = "127.0.0.1"
Dim $port = "3200"
   
Dim $ConnectedSocket = -1
$ConnectedSocket = TCPConnect($router_IP, $port)
TCPSend($ConnectedSocket, "3200" & @CRLF)
PS: je cherche énormément depuis 2 jours j'ai fouillé le forum anglais et je viens juste de trouver ça j'étais parti sur une mauvaise voix voilà tout dsl...
Répondre