Invite de commandes Visual Studio donne "\ Common était inattendu en ce moment"
J'ai besoin d'exécuter MSBuild à partir de la ligne de commande à l'aide de l'Invite de Commande Visual Studio (2010). Ça marchait très bien. Maintenant, quand j'ouvre la fenêtre je reçois le message d'erreur suivant:
\Common was unexpected at this time.
D'essayer d'exécuter la msbuild
commande après cela échoue.
J'ai naturellement pensé que c'était un problème avec une non cotées entrée dans ma variable d'environnement PATH, éventuellement à partir d'une récente voyous installer. J'ai vérifié, mais le CHEMIN semble être casher.
De creuser dans le système de fichiers, j'ai découvert que le fichier de commandes en cours d'exécution par l'invite est C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\vcvars32.chauve-souris. J'ai édité que par la mise en ECHO
déclarations de trace de l'emplacement de l'erreur. Qui semblaient alors une erreur à cette ligne:
@if not "%WindowsSdkDir%" == "" (
Si je supprime les guillemets, l'erreur est différente: "les Fichiers ne s'attendait pas à ce moment."
Les 2 lignes après ce sont maintenant:
@echo 51
@set "PATH=%WindowsSdkDir%bin\NETFX 4.0 Tools;%WindowsSdkDir%bin;%PATH%"
J'ai supposé que le défaut de déclaration a été la deuxième ligne, mais la echo
déclaration ne produit pas de sortie, je ne sais donc pas comment cela pourrait se produire.
J'utilise une version 64 bits de Windows 7.
J'apprécierais un peu d'aide.
source d'informationauteur Richard
Vous devez vous connecter pour publier un commentaire.
Voir cette fil.
Ma conjecture est votre
PATH
a modifié récemment et contient maintenant quelque chemin d'accès au dossier avec des guillemets à l'intérieur.HTH
Mon problème est que à l'intérieur d'un bloc si le rval d'une affectation de variable (%PATH% dans mon cas) contenait un parenthèses, par exemple:
Affiche "a été inattendu en ce moment."
J'ai trouvé la réponse ici: Fichier de commandes variable avec les espaces et les parenthèses. Ce qui est de l'utilisation de la syntaxe étendue de set. Par exemple:
Ce n'ajoute pas de guillemets et n'affecte pas le résultat stocké dans %var2%.
J'ai eu des guillemets (") dans la variable PATH qui a provoqué ce, après je les ai retirées, il a commencé à travailler.