Page 1 sur 1
[R] Exécuter un script sur un ordinateur distant
Posté : lun. 30 déc. 2013 14:39
par amouna98
bonjour
dans le but d'automatiser l’exécution d'un script sur un autre ordinateur j'ai réalisé le script suivant( il n'est pas complet ) :
Code : Tout sélectionner
$Gui = GUICreate( "2oo34U500", 500, 200, -1, 1)
$Label1 = GUICtrlCreateLabel("Ordinateur distant :", 20, 10, 120, 15)
$Label_ip = GUICtrlCreateLabel("Adresse IP :", 40, 30, 120, 15)
$saisir_ip = GUICtrlCreateInput("", 40, 50, 120, 25)
$Label_login = GUICtrlCreateLabel("login :", 40, 80, 120, 15)
$saisir_login = GUICtrlCreateInput("", 40, 100, 120, 25)
$Label_passw = GUICtrlCreateLabel("passw :", 40, 130, 120, 15)
$saisir_passw = GUICtrlCreateInput("", 40, 150, 120, 25,BitOR(0x0020,0x0001))
$ip=GUICtrlRead($saisir_ip)
$login =GUICtrlRead($saisir_login)
$passw=GUICtrlRead($saisir_passw)
$dir="D:\Documents and Settings\" &$login & "\Mes documents\Computer_Name.exe"
$PSexec = "D:\PsExec.exe"
GUISetState(@SW_SHOW)
$lance=Run( $PSexec & " \\"& $ip & " -u dom2.ad.sys\" & $login & ' -p "' & $passw & '" -n 15 -h -i "' & $dir & '"')
tout d'abord je veux savoir est ce qu'il n'a pas une meilleur façon pour faire ( mieux que PsExec.exe)
sinon je voulais pouvoir choisir le répertoire de l’exécutable Computer_Name.exe ( sur l'ordinateur distant distant )
merci pour votre aide

Re: [..] exécuter un script sur un ordinateur distant
Posté : lun. 30 déc. 2013 16:14
par jguinch
Mieux que PSEXEC, je sais pas, ça dépend du point de vue de chacun.
Tu peux utiliser les requêtes WMI avec la classe Win32_Process, qui dispose de la méthode
Create. Cela te permettra de faire ça sans avoir à passer par un outil externe (même si perso je préfère utiliser Psexec).
Sinon, je ne comprend pas trop
je voulais pouvoir choisir le répertoire de l’exécutable Computer_Name.exe ( sur l'ordinateur distant ) .
Est-ce que tu sais à l'avance où est le script sur le poste distant ? Est-ce que tu dois d'abord le copier ? Ne pourrais-tu pas utiliser l'option
-c de psexec ?
Re: [..] exécuter un script sur un ordinateur distant
Posté : jeu. 09 janv. 2014 11:46
par amouna98
merci pour ta réponse .
Sinon, je ne comprend pas trop je voulais pouvoir choisir le répertoire de l’exécutable Computer_Name.exe ( sur l'ordinateur distant ) .
Est-ce que tu sais à l'avance où est le script sur le poste distant ? Est-ce que tu dois d'abord le copier ? Ne pourrais-tu pas utiliser l'option -c de psexec ?
j'aurai aimé ne pas imposer le répertoire de Computer_Name.exe, et donc je préfère que je le copie .j'aimerai pouvoir exécuté ce script sur n import quel PC;
[img]
[/img]
j'ai pas essayé l option -c de PSEXEC. je vais l'essayer
Re: [..] Exécuter un script sur un ordinateur distant
Posté : jeu. 16 janv. 2014 15:32
par amouna98
je n'arrive pas !
voila ma ligne de commande actuelle
Code : Tout sélectionner
lance_Bat=Run( $PsExec & " \\"& $ip & " -u " & $saisir_Domain_local & "\" & $login & ' -p "' & $passw & '" -n 15 -h -i "' & $Bat & '"')
merci de votre aide
Re: [..] Exécuter un script sur un ordinateur distant
Posté : jeu. 16 janv. 2014 22:04
par jguinch
Es-tu sûr de ta ligne de commande ?
Tu peux faire ça :
Code : Tout sélectionner
ConsoleWrite($PsExec & " \\"& $ip & " -u " & $saisir_Domain_local & "\" & $login & ' -p "' & $passw & '" -n 15 -h -i "' & $Bat & '"')
Ca te permettra de vérifier la syntaxe, ou
Code : Tout sélectionner
Run(@ComSpec & " /k echo " & $PsExec & " \\"& $ip & " -u " & $saisir_Domain_local & "\" & $login & ' -p "' & $passw & '" -n 15 -h -i "' & $Bat & '"')
Nous, on ne connait pas la valeur de tes variables, donc difficile de t'aider plus.
$PsExec est le chemin complet de l'exécutable, ou juste son nom ? Utilise le chemin complet pour être sûr
Re: [..] Exécuter un script sur un ordinateur distant
Posté : ven. 17 janv. 2014 10:22
par Koumla
Bonjour,
J'utilise dans mes différents script et je n'ai jamais eu de problème.
A tester.
Code : Tout sélectionner
$Gui = GUICreate( "2oo34U500", 500, 200, -1, 1)
$Label1 = GUICtrlCreateLabel("Ordinateur distant :", 20, 10, 120, 15)
$Label_ip = GUICtrlCreateLabel("Adresse IP :", 40, 30, 120, 15)
$saisir_ip = GUICtrlCreateInput("", 40, 50, 120, 25)
$Label_login = GUICtrlCreateLabel("login :", 40, 80, 120, 15)
$saisir_login = GUICtrlCreateInput("", 40, 100, 120, 25)
$Label_passw = GUICtrlCreateLabel("passw :", 40, 130, 120, 15)
$saisir_passw = GUICtrlCreateInput("", 40, 150, 120, 25,BitOR(0x0020,0x0001))
$ip=GUICtrlRead($saisir_ip)
$login =GUICtrlRead($saisir_login)
$passw=GUICtrlRead($saisir_passw)
GUISetState(@SW_SHOW)
$chemin_psexec = "c:\test"
$chemin_exec = "c:"
$exec_a_lancer = "Computer_Name.exe"
$cnx = $chemin_psexec & "\psexec.exe \\" & $ip & " -u " & @LogonDomain & "\" & $login & " -p " & $passw & " -c " & $chemin_exec & "\" & $exec_a_lancer
RunWait(@ComSpec & ' /c ' & $cnx, "", @SW_HIDE)
[R] Exécuter un script sur un ordinateur distant
Posté : lun. 13 avr. 2015 09:53
par amouna98
Merci c'est bon ça marche