Question impossible lancer script powershell via php

Plus d'informations
il y a 10 ans 11 mois #19347 par Laurent Dardenne
Kevios écrit:

Est-ce plus lisible? ^^\"

Oui.

Essaie déjà avec un script dont le code est simple, exemple : dir > c:\temp\test.txt

Si cela ne change rien, la ligne de commande ou le contexte est en cause ( bon ça on le sait +-), reste à trouver l'origine du pb...

Il se peut que le msg d'erreur soit lié au handle de la fenêtre de la console, cf. le paramètre WindowStyle ou NoNewWindows. Voir aux redirections .

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 10 ans 11 mois #19348 par Kevin
lorsque je fais un simple \"Get-ChildItem c:\inetpub\wwwroot\" ça fonctionne. Bon, tout ressort en une ligne mais au moins j'ai le resultat!

Répertoire : C:\inetpub\wwwroot Mode LastWriteTime Length Name ----

---- d---- 16/03/2015 11:30 aspnet_client d---- 25/03/2015 15:15 INFOPC -a--- 16/03/2015 10:09 689 iisstart.htm -a--- 16/03/2015 10:09 184946 welcome.png

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 10 ans 11 mois #19349 par Kevin
Alors là étrange... je viens de faire un test avec deux commandes simples : set-variable et remove-variable.

Voici le code:

[code:1]$ErrorActionPreference=\"continue\"
Remove-Variable -Name \"test\" -Force
Write-Host \"valeur de la variable test : $test\"
Set-Variable -Name \"test\" -Value \"42\" -Force
Write-Host \"valeur de la variable test : $test\"[/code:1]

Quand je suis dans ma commande powershell, voici le resultat:

valeur de la variable test :
valeur de la variable test : 42

Quand je fais via php ça me ressort une erreur:

Remove-Variable : Impossible de trouver une variable assortie du nom \"test\". Au niveau de \\SERVEUR\script\Lancement_Powershell_Info_PC.ps1�: 3 Caractere : 16 + Remove-Variable <<<< -Name \"test\" -Force + CategoryInfo : ObjectNotFound: (test:String) [Remove-Variable], ItemNotFoundException + FullyQualifiedErrorId : VariableNotFound,Microsoft.PowerShell.Commands.R emoveVariableCommand valeur de la variable test : valeur de la variable test : 42

Ce serais mon IIS (et donc PHP) qui gère mal les erreurs? que ce soit des bloquantes ou non bloquantes? (au passage ton tuto est très intéressant!)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 10 ans 11 mois #19350 par Laurent Dardenne
Kevios écrit:

Ce serais mon IIS (et donc PHP) qui gère mal les erreurs?

Là, je ne saurais dire.
La notion d'erreur simple (non-bloquante) est spécifique à PS, seuls les exceptions sont propagées.
Peut être que PHP 'se connecte' à la sortie standard d'erreur, et que PS y écrit ses erreurs. Je n'ai pas fait ce test :)

Pour ton pb si la ligne d'appel fonctionne, le pb peut provenir de ton code d'inventaire...
Kevios écrit:

au passage ton tuto est très intéressant!

Content qu'il te soit utile.

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 10 ans 11 mois #19353 par Kevin
Problème résolu!

Finalement, au lieu de passer par du php, j'ai utilisé du VBScript ^^\"

Bon, c'est pas le mieux mais ça a le mérite de fonctionner! :D

Voici le petit bout de code qui m'a permis le bon fonctionnement de mon application:

[code:1] <script type=\"text/vbscript\">
Set objShell = CreateObject(\"Wscript.shell\"«»)
objShell.run(\"powershell -executionpolicy bypass -file \\SERVEUR\script\Lancement_Powershell_Info_PC.ps1\"«»)
</script>[/code:1]

Et ça m'affiche aucun message d'erreur, tout ce lance directement, sans aucun blocage! si c'est pas merveilleux :3

Encore merci pour ton aide et tes conseils Laurent!

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 10 ans 11 mois #19354 par Laurent Dardenne
Kevios écrit:

ça a le mérite de fonctionner!

:)

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.056 secondes
Propulsé par Kunena