2017-05-15 3 views
1

Ich habe den folgenden Code in einer Powershell-Datei:Run MSBuild von Powershell

$msbuild = 'C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe' 
iex ("& {0} {1}" -f $msbuild, "-version") 

Der Fehler, den ich bekommen ist:

x86: Der Begriff 'x86' wird nicht als Name anerkannt von ein Cmdlet, Funktion, Skriptdatei oder ausführbares Programm. Überprüfen Sie die Schreibweise des Namens oder, wenn ein Pfad enthalten war, überprüfen Sie, ob der Pfad korrekt ist, und versuchen Sie es erneut mit .

Ich habe eine Reihe von Dingen ausprobiert, aber ich kann PowerShell nicht mit Stringvariablen im Skript arbeiten. Mein allgemeinere Ziel ist es Skripte von der Art der

iex ("{0} {1} {2}" -f $msbuild,$project_name,$config) 

Antwort

1

Sie müssen Surround der Pfad mit Anführungszeichen zu laufen:

$msbuild = '"C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe"' 
iex ("& {0} {1}" -f $msbuild, "-version") 
Verwandte Themen