web-dev-qa-db-fra.com

Powershell 'n'est pas reconnu comme une commande interne ou externe, un programme utilisable ou un fichier de commandes

J'essaie de lancer une commande powershell pour exécuter un fichier powershell en tant qu'événement post-build dans Visual studio 2013, mais je reçois
Powershell' is not recognized as an internal or external command, operable program or batch file

erreur sur la fenêtre de sortie et

Powershell -Command exited with code 9009 error

Message d'erreur complet:

'Powershell' is not recognized as an internal or external command,
10>  operable program or batch file.
10>C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(4429,5): error MSB3073: The command "echo "C:\dev\tfs\Main\Shared\AggregationComponents\GenerateSchema.cmd"
10>C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(4429,5): error MSB3073: call "C:\dev\tfs\Main\Shared\AggregationComponents\GenerateSchema.cmd"
10>C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(4429,5): error MSB3073: echo "Move the PhoenixData namespace schema suffixing it"
10>C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(4429,5): error MSB3073: Powershell -Command "C:\dev\tfs\Main\Shared\AggregationComponents\MoveAndRenameXsds.ps1 'C:\dev\tfs\Main\Shared\AggregationComponents\bin\Debug\' 'C:\dev\tfs\Main\Shared\AggregationComponents\..\PublishedAnalyticsXsds' '.Aggregation'"" exited with code 9009.
========== Rebuild All: 8 succeeded, 1 failed, 1 skipped ==========
26
Rahul Lodha

On dirait qu'il vous manque une variable d'environnement.

Ajoutez ceci à votre variable d'environnement Path:

%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\

OR

Changez votre script en ceci:

%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\powershell.exe -Command "your command"
44
Jon Tirjan