2012-11-21 3 views
5

Je sais que cela peut sembler être une question en double, mais j'ai parcouru toutes les réponses existantes en vain.Compilateur de ligne de commande Visual Studio 2012

J'ai essayé d'avoir l'invite de commande reconnaître le compilateur de ligne de commande pour C#, car il est nécessaire pour le générateur de compilateur que j'utilise. Je travaille sur une nouvelle installation de Windows 7 SP1 64bit, avec les compliments Visual Studio 2012 de dreamspark.

J'ai essayé d'ajouter le "Microsoft.NET \ Framework \ v4.0.30319" et le "Microsoft.NET \ Framework64 \ v4.0.30319" à la variable d'environnement path, j'ai essayé le fichier batch vsvars, et je n'ai toujours pas de la chance. L'invite de commande indique simplement que "csc n'est pas reconnu comme une commande interne ou externe".

Toute aide serait appréciée!

+2

Quelle est la sortie de la commande 'path' exactement? –

+0

Vous obtenez des versions complètes afaik. Utilisez simplement l'invite de commandes de Visual Studio, Démarrer + Tous les programmes pour le trouver. –

+0

Utilisez-vous l'invite de commande du développeur pour VS2012? Regardez dans 'C: \ Program Files (x86) \ Microsoft Visual Studio 11.0 \ Common7 \ Tools' pour le fichier Bat nommé' VsDevCmd.bat' –

Répondre

6

Il n'y a vraiment que deux possibilités. Un, votre chemin est incorrect. Essayez ceci:

C:\Windows\Microsoft.NET>path 
PATH=C:\Program Files\Common Files\Microsoft Shared\Microsoft Online Services;C:\Program Files (x86)\Common Files\Micros 
oft Shared\Microsoft Online Services;c:\Program Files (x86)\AMD APP\bin\x86_64;c:\Program Files (x86)\AMD APP\bin\x86;C: 
\oraclexe\app\oracle\product\11.2.0\server\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System 
32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\QuickTime\QTSystem\;c:\Program Files (x86)\Microsoft SQL Server\100\To 
ols\Binn\;c:\Program Files\Microsoft SQL Server\100\Tools\Binn\;c:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\P 
rogram Files (x86)\Java\jre6\bin;C:\Program Files (x86)\Graphviz 2.28\bin;C:\Program Files (x86)\1E\SMSNomad\;C:\Program 
Files (x86)\Git\cmd;C:\Program Files (x86)\Git\bin;C:\Program Files (x86)\IronRuby 1.1\bin;C:\Program Files\Microsoft\W 
eb Platform Installer\;C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\;C:\Program Files\Microsoft SQL S 
erver\110\Tools\Binn\;C:\Program Files (x86)\Microsoft SDKs\TypeScript\0.8.0.0\ 

C:\Windows\Microsoft.NET>csc 
'csc' is not recognized as an internal or external command, 
operable program or batch file. 

C:\Windows\Microsoft.NET>set path=%path%;C:\Windows\Microsoft.NET\Framework64\v4.0.30319 

C:\Windows\Microsoft.NET>csc 
Microsoft (R) Visual C# Compiler version 4.0.30319.17929 
for Microsoft (R) .NET Framework 4.5 
Copyright (C) Microsoft Corporation. All rights reserved. 

warning CS2008: No source files specified 
error CS1562: Outputs without source must have the /out option specified 

C:\Windows\Microsoft.NET> 

Si cela ne fonctionne pas, vérifiez alors csc.exe est en effet au bon endroit:

C:\Windows\Microsoft.NET>dir C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /b 
csc.exe 

Si on ne trouve pas, essayez de faire:

C:\Windows\Microsoft.NET>dir csc.exe /s /b 
C:\Windows\Microsoft.NET\Framework\v1.1.4322\csc.exe 
C:\Windows\Microsoft.NET\Framework\v2.0.50727\csc.exe 
C:\Windows\Microsoft.NET\Framework\v3.5\csc.exe 
C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe 
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\csc.exe 
C:\Windows\Microsoft.NET\Framework64\v3.5\csc.exe 
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe 

Pour voir si c'est dans un répertoire différent. Peut-être avez-vous installé une autre version du framework ou n'avez pas de système d'exploitation 64 bits.

+0

dir csc.exe/s/b renvoie les éléments suivants: c: \ Windows \ Microsoft. NET> dir csc.exe/s/b c: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ csc.exe c: \ Windows \ Microsoft.NET \ Framework \ v3.5 \ csc.exe c : \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ csc.exe c: \ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727 \ csc.exe c: \ Windows \ Microsoft.NET \ Framework64 \ v3. 5 \ csc.exe c: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ csc.exe Cela, et définir le chemin d'accès =% path%; C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 fonctionne aussi longtemps comme la fenêtre de commande est ouverte, mais pas de manière permanente – Frostie

+0

Ok, semblait avoir fonctionné mais pas tout à fait sûr pourquoi. J'ai supprimé "% SystemRoot% \ System32 \ Wbem;% SYSTEMROOT% \ System32 \ WindowsPowerShell \ v1.0 \;" du Chemin, et ça a commencé à marcher. Si je l'ajoute encore une fois, cela cesse de fonctionner. – Frostie

+0

@FrostSA - Oui, c'est plutôt poisson. Peut-être ajouter '% SystemRoot% \ Microsoft.NET \ Framework64 \ v4.0.30319' comme la toute première chose dans le chemin. –

Questions connexes