Bonjour,
J'ai un petit problème avec un script PS1, le but de ce dernier et de pouvoir installer une application (waptagent.exe) automatiquement avec n'importe quel utilisateur, il sera exécuter par tous les postes du parc à leur démarrage.
http://powershell.jumbor.fr/2013/0 [...] t-que.html Je me suis servi de ce lien.
Voici donc le contenu de mon PS1:
Code :
- $username = "Domaine\compteadmin"
- $passcrypt = "MDP créer avec read-host -assecurestring | convertfrom-securestring | out-file C:\x.txt"
- $password = convertto-securestring $passcrypt
- $cred = new-object -typename System.Management.Automation.PSCredential -argumentlist $username, $password
- Start-Process "CHEMIN VERS\Lancement.bat" -Credential $cred -ArgumentList "services.msc"
|
Le lancement.bat me permet de faire une installation silencieuse du waptagent, chose que je n'ai pas réussi à faire directement avec PS :
Code :
- CHEMIN VERS\waptagent.exe /VERYSILENT /MERGETASKS="useWaptServer="http://@serveurWAPT",installTray,autorunTray,installService"
|
Maintenant, quand je place ces fichier dans des repertoires locaux, l'installation se lance correctement,
lorsque je les mets sur un serveur \\@serveur\xxx.ps1
je saisi la commande dans cmd
Code :
- powershell \\@serveur\xxx.ps1
|
Jobtiens l'erreur suivante:
Code :
- ConvertTo-SecureString : Clé non valide pour l'utilisation dans l'état spécifié.
- Au niveau de \\@serveur\xxx.ps1 : 3 Caractère 35
- + $password = convertto-securestring <<<< $passcrypt
- + CategoryInfo : InvalidArgument <:> [ConvertTo-SecureString], CryptographicException
- + FullyQualifiedErrorId : ImportSecureString_InvalidArgument_CryptographicError,Microsoft.PowerShell.Commands.ConvertToSecureStringCommand
- New-Object : Exception lors de l'appel de " .ctor " avec " 2 " argument(s) : "Impossible de traiter l'argument, car la valeur de l'argument " password " est Null. Remplacez la valeur de l'argument " password " par une valeur non Null. "
- Au niveau de \\@serveur\xxx.ps1 : 4 Caractère 19
- + $cred = new-object <<<< -typename System.Management.Automation.PSCredential -argumentlist $username, $password
- +CategoryIngo : Invalid Operation: <:> [New-Object], MethodInvocationException
- +FullyQualifiedErrorId : ConstructorInvokedThrowException,Microsoft.PowerShell.Commands.NewObjectCommand
|
Une fenêtre de saisi login/mdp s'affiche, et peu importe l'identifiant que je mets les lignes suivantes se rajoutent et le script se termine.
Code :
- Start-Process : Impossible d'exécuter cette commande en raison de l'erreur : Échec d'ouverture de session : nom d'utilisateur inconnu ou mot de passe incorrect.
- Au niveau de Z:\Waptagent\PowerShell\PowerShell.ps1 : 5 Caractère : 14
- + Start-Process <<<< ".\Lancement.bat" -Credential $cred -ArgumentList "services.msc"
- + CategoryInfo : InvalidOperation: (:) [Start-Process], InvalidOperationException
- + FullyQualifiedErrorId : InvalidOperationException,Microsoft.PowerShell.Commands.StartProcessCommand
|
J'ai effectuer cette manipulation en tant qu'utilisateur normal ou avec mon compte admin, je ne sais pas si il faut rajouter quelque chose pour exécuter un script distant,
merci d'avance!