[..] Argument de ControlSend pour controler une VMWARE

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
popiru
Niveau 1
Niveau 1
Messages : 4
Enregistré le : dim. 12 janv. 2014 12:32
Status : Hors ligne

[..] Argument de ControlSend pour controler une VMWARE

#1

Message par popiru »

Bonjour, =)
voila j’espère que le titre est explicite mais au cas ou je réexplique en donnant plus de détail =)

Voila alors j'ai un script autoit qui tourne sur mon vrai PC ( mon hôte ) avec des controlsend dedans =)

j'aimerai que c'est controlsend "pointe"/contrôle un fenêtre de VMWARE (active bien sur) mais je n'ai pas encore réussi après plusieurs essais et 2 heures de recherche sur google et différent forum anglais a trouvé une solution :/
(Preuve ce forum anglais ou ce pauvre monsieur na pas eu de réponse :/ http://www.autoitscript.com/forum/topic ... e-machine/)

pour ceux qui ne connaissent pas la fonction controlsend voici le lien de la doc:
http://www.autoitscript.com/autoit3/doc ... olSend.htm

Voici une capture d'image de mon autoitinfo pointant sur ma fenêtre VMWARE.
Image

Deplus je vous donne mon morceau de code du controlSend devant pointer sur ma VM:

Code : Tout sélectionner

dim $DVersion[2] = ["Windows 7 - VMware Workstation","MKSWindow#0"]
        ControlSend($DVersion[0],$DVersion[1],"","{tab}")
 
Si vous avez une idées des argument que je dois mettre dans controlsend, j'en serai très heureux =)
à très bientot
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11824
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Argument de ControlSend pour controler une VMWARE

#2

Message par Tlem »

Qu'est-ce que vous cherchez à automatiser dans votre VMWare ?
Les commandes de VMWare ou la machine virtuelle en fonction ?

Si vous cherchez à automatiser l'interface de l'OS qui se trouve dans votre machine virtuelle, cela ne fonctionnera pas. VMWare n'affiche qu'une image pas l'interface physique (ID de contrôle, de fenêtre, etc ...).

Edit :
Après, vous pouvez essayer de gérer ça par coordonnées, mais je ne donne pas cher de la longévité de votre script si la résolution change ...

Vous devez lancer le script dans la machine virtuelle. ;)
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
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..]Argument de ControlSend pour controler une VMWARE

#3

Message par mikell »

:?:

Code : Tout sélectionner

dim $DVersion[2] = ["Windows 7 - VMware Workstation", "MKSEmbedded1"]
ControlSend($DVersion[0], "", $DVersion[1], "{TAB}")
Edit
J'avais pas vu le post de Thierry
Ce code est "académique", construit d'après ce qui figure dans l'image de Au3Info
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
popiru
Niveau 1
Niveau 1
Messages : 4
Enregistré le : dim. 12 janv. 2014 12:32
Status : Hors ligne

Re: [..] Argument de ControlSend pour controler une VMWARE

#4

Message par popiru »

J'ai remarquez qu'on ne pouvais avoir les ID des contrôles en effet. et oui si nous faisons par clic sa serais un script instable et éphémère. c'est pour sa que je switch entre les contrôles dans ma vm grâce a TAB.
ensuite via une détection d'image j'en déduis que je suis sur le mon contrôle et bim j'envoie les différentes commande et lettre voulu =)
mikell a écrit :

Code : Tout sélectionner

dim $DVersion[2] = ["Windows 7 - VMware Workstation", "MKSEmbedded1"]
ControlSend($DVersion[0], "", $DVersion[1], "{TAB}")
cela n'as pas fonctionner deplus dans mon tableau $DVersion[2], la deuxieme place contient l'argument text il me semble, cependant tu la mis dans l'argument ControlID de Controlsend, pourquoi?

merci de m'aider messieurs =)
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Argument de ControlSend pour controler une VMWARE

#5

Message par mikell »

Ben si on en croit la syntaxe de ControlSend et les renseignements de ton image de Au3Info :

Code : Tout sélectionner

ControlSend("Windows 7 - VMware Workstation", "", "[CLASS:MKSEmbedded; INSTANCE:1]", "{TAB}" )
Mais je peux pas le tester évidemment ^^
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
popiru
Niveau 1
Niveau 1
Messages : 4
Enregistré le : dim. 12 janv. 2014 12:32
Status : Hors ligne

Re: [..] Argument de ControlSend pour controler une VMWARE

#6

Message par popiru »

D'ac je vais tester demain je ne suis plus au bureau la mdr =) merci pour ton aide
Répondre