Partager via


Génération à partir de la ligne de commande avec csc.exe

Vous pouvez appeler le compilateur c en tapant le nom de son fichier exécutable (csc.exe) à une invite de commandes.

Si vous utilisez la zone Invite de commandes de Visual Studio, toutes les variables d'environnement nécessaires sont définies pour vous.Dans Windows 7, vous pouvez accéder à cette fenêtre dans le menu Démarrer en ouvrant le dossier de Microsoft Visual Studio Version\ Visual Studio Tools.Dans windows 8, l'invite de commandes de Visual Studio est appelée Invite de commandes développeur pour VS2012, et vous pouvez trouver en recherchant le début de l'écran.

Si vous utilisez une fenêtre d'invite de commandes standard, vous devez ajuster votre chemin d'accès pour pouvoir appeler csc.exe à partir de n'importe quel sous-répertoire sur votre ordinateur.Vous devez également exécuter vsvars32.bat pour définir les variables d'environnement appropriées pour permettre une génération à partir de la ligne de commande.Pour plus d'informations sur vsvars32.bat, y compris des instructions sur la façon de recherche et le exécutez-le, consultez Comment : définir des variables d'environnement.

Si vous travaillez sur un ordinateur sur lequel seul Kit de développement logiciel Windows, vous pouvez utiliser le compilateur c à Invite de commandes du Kit de développement SDK, que vous ouvrez de l'option du menu Microsoft .NET Framework SDK .

Vous pouvez également utiliser MSBuild pour générer des programmes de c par programme.Pour plus d'informations, consultez MSBuild.

Le fichier exécutable de csc.exe se trouve généralement dans le .NET framework Microsoft.NET\\ dossier d'Version sous le dossier Windows.Son emplacement peut varier selon la configuration exacte d'un ordinateur particulier.Si plusieurs versions du.NET Framework est installée sur votre ordinateur, vous trouverez plusieurs versions de ce fichier.Pour plus d'informations sur ces installations, consultez Détermination de la version installée du .NET Framework.

ConseilConseil

Lorsque vous générez un projet à l'aide de l'IDE de Visual Studio, vous pouvez organiser la commande csc et ses options du compilateur associées dans la fenêtre Sortie .Pour afficher ces informations, suivez les instructions de Comment : afficher, enregistrer et configurer des fichiers journaux de génération de modifier le niveau de détail les données du journal par Normal ou Détaillé.Après avoir régénériez votre projet, recherchez la fenêtre Sortie pour csc recherche l'appel du compilateur c.

Dans cette rubrique

  • Règles de syntaxe pour la ligne de commande

  • Exemples de lignes de commande

  • Différences entre les résultats de la compilation C# et ceux de la compilation C++

Règles de syntaxe de ligne de commande pour le compilateur C#

Le compilateur C# utilise les règles suivantes lorsqu'il interprète les arguments spécifiés dans la ligne de commande du système d'exploitation :

  • Les arguments sont délimités par un espace blanc, qui peut être un espace ou une tabulation.

  • Le signe insertion (^) n'est pas reconnu comme caractère d'échappement ni comme délimiteur.Ce caractère est traité par l'analyseur de ligne de commande du système d'exploitation avant d'être passé au tableau argv du programme.

  • Une chaîne placée entre guillemets doubles ("chaîne") est interprétée comme un argument unique, peu importe les espaces blancs inclus.Une chaîne entre guillemets peut être incorporée dans un argument.

  • Un guillemet double précédé d'une barre oblique inverse (\") est interprété comme un caractère guillemet double littéral (").

  • Les barres obliques inverses sont interprétées littéralement, sauf si elles précèdent immédiatement un guillemet double.

  • Si un nombre pair de barres obliques inverses est suivi d'un guillemet double, une barre oblique inverse est placée dans le tableau argv pour chaque paire de barres obliques inverses et le guillemet double est interprété comme un délimiteur de chaîne.

  • Si un nombre impair de barres obliques inverses est suivi d'un guillemet double, une barre oblique inverse est placée dans le tableau argv pour chaque paire de barres obliques inverses et le guillemet double est « ignoré » à cause de la barre oblique inverse restante.Cela entraîne l'ajout d'un guillemet double littéral (") dans le tableau argv.

Exemples de lignes de commande pour le compilateur C#

  • Compile File.cs pour produire File.exe :

    csc File.cs 
    
  • Compile File.cs pour produire File.dll :

    csc /target:library File.cs
    
  • Compile File.cs pour créer My.exe :

    csc /out:My.exe File.cs
    
  • Compile les fichiers C# dans le répertoire actif avec les optimisations activées et définit le symbole DEBUG.Le fichier de sortie est File2.exe :

    csc /define:DEBUG /optimize /out:File2.exe *.cs
    
  • Compile tous les fichiers C# du répertoire actif pour produire une version debug de File2.dll.Aucun logo ni aucun avertissement ne sont affichés :

    csc /target:library /out:File2.dll /warn:0 /nologo /debug *.cs
    
  • Compile tous les fichiers C# du répertoire actif vers Something.xyz (une DLL) :

    csc /target:library /out:Something.xyz *.cs
    

Différences entre les résultats de la compilation C# et ceux de la compilation C++

Il n'existe aucun fichier de l'objet (.obj) créé suite à appeler le compilateur c ; les fichiers de sortie sont créés directement.Le compilateur C# n'a donc pas besoin d'un éditeur de liens.

Voir aussi

Tâches

Comment : afficher les arguments de ligne de commande (Guide de programmation C#)

Comment : accéder à des arguments de ligne de commande à l'aide de foreach (Guide de programmation C#)

Référence

Options du compilateur C# par ordre alphabétique

Options du compilateur C# par catégorie

Arguments de ligne de commande (Guide de programmation C#)

Valeurs de retour Main() (Guide de programmation C#)

Concepts

Main() et arguments de ligne de commande (Guide de programmation C#)

Autres ressources

Options du compilateur C#