Page 1 sur 1
[...] Ouverture de fenetre et commande send
Posté : lun. 14 avr. 2014 10:44
par alex2t
bonjour à tous,
je veux faire un script sous windows 7 x64 qui me renseigne le domaine en fonction d'un choix.
j'ai une gui qui me demande ce choix, puis je veux modifier dans les propriétés systeme.
j'ai une fonction que ouvre la fenetre puis via un send je veux ouvrir le bouton modifier...
Code : Tout sélectionner
Func remplirdom()
;MsgBox(64,'message', 'valeur:'&$valdom&' user:'&$user&' mdp:'&$mdp)
; appel fenetre proprietes system sur onglet Nom de l'ordinateur
Run ('control.exe sysdm.cpl,,1')
Send("{!f}")
send("{ENTER}")
EndFunc
la fenetre windows des propriétés s'ouvre bien mais ensuite pas d'execution des "send"
pourquoi?
merci.
*** Important ***
- Ajoutez [..] au début de votre titre.
- N'oubliez pas les balises de code.
- N'utilisez pas la coloration syntaxique dans ce forum
Plus de détails sur ce lien :
http://www.autoitscript.fr/forum/viewto ... f=35&t=595
Re: ouverture de fenetre et commande send
Posté : lun. 14 avr. 2014 11:34
par jguinch
alex2t, merci t'éditer ton message afin qu'il respecte les règles de
présentation d'un message.
Plutôt que d'automatiser l'interface graphique de Windows, il existe des outils en ligne de commande qui permettent de faire ça...

Re: ouverture de fenetre et commande send
Posté : lun. 14 avr. 2014 12:03
par alex2t
si la ligne de commande c'est d'utiliser netdom, cette derniére n'est plus supportée officiellement par windows 7 x64.
je sais qu'il est possible de le faire...
mais ce qui ne m'explique pas pourquoi après avoir ouvert la fenetre des propriétés système, la commande send n'a pas d'effet.
Re: ouverture de fenetre et commande send
Posté : lun. 14 avr. 2014 12:04
par mikell
*** Important ***
- Ajoutez [..] au début de votre titre.
Re: [..]ouverture de fenetre et commande send
Posté : lun. 14 avr. 2014 14:51
par jguinch
Effectivement, le Send ne fonctionnera pas, puisque tu l'exécutes juste après avoir lancé le processus, alors que la fenêtre n'existe pas encore.
Tu dois attendre que la fenêtre existe avant de passer à la suite.
Au lieu d'utiliser Send, regarde du côté des fonction ControlClick, ControlSend...
Si tu ne souhaites pas passer par netdom, tu peux regarder les fonctions WMI, notamment JoinDomainOrWorkgroup.
Un sujet su le forum US :
http://www.autoitscript.com/forum/topic ... ng-domain/
Tiens, j'ai retrouvé ça dans mon bazarre:
► Afficher le texte
Code : Tout sélectionner
#RequireAdmin
If NOT IsAdmin() Then Exit
Global Const $JOIN_DOMAIN = 1
Global Const $ACCT_CREATE = 2
Global Const $ACCT_DELETE = 4
Global Const $WIN9X_UPGRADE = 16
Global Const $DOMAIN_JOIN_IF_JOINED = 32
Global Const $JOIN_UNSECURE = 64
Global Const $MACHINE_PASSWORD_PASSED = 128
Global Const $DEFERRED_SPN_SET = 256
Global Const $INSTALL_INVOCATION = 262144
Func _JoinDomainOrWorkGroup($sDomainName, $Password, $sUserName, $sAccountOU = "", $FJoinOptions = $JOIN_DOMAIN + $ACCT_CREATE)
$oComputerSystem = ObjGet("winmgmts:{impersonationLevel=Impersonate}!\\" & @ComputerName & "\root\cimv2:Win32_ComputerSystem.Name='" & @ComputerName & "'")
If NOT IsObj($oComputerSystem) Then Return SetError(1, 0, 0)
$iReturn = $oComputerSystem.JoinDomainOrWorkGroup( $sDomainName, $Password, $sDomainName & '\' & $sUserName, $sAccountOU, $FJoinOptions )
Return $iReturn
EndFunc
Re: [..] Ouverture de fenetre et commande send
Posté : lun. 14 avr. 2014 16:05
par TommyDDR
Je ne sais pas si c'est votre cas mais je tiens à préciser un point important depuis l'apparition de l'UAC.
Tout programme lancé en "non admin" (cad : UAC activé, et sans #RequireAdmin) ne pourras PAS faire de
et autre interactions avec une interface lancée en admin.
Re: [..] Ouverture de fenetre et commande send
Posté : lun. 14 avr. 2014 17:10
par alex2t
merci à vous.
ce qui est deja exclut, c'est le temps d'ouverture.
car meme en mettant une attente ou un winactivate: pas d'action.
je vais me resoudre à utiliser netdom pour le moment.
en copier les fichier ds le system.