Partager via


Csc (tâche)

Encapsulecsc.exe et produit des fichiers exécutables (.exe), des bibliothèques de liens dynamiques (.dll) ou des modules de code (.netmodule). Pour plus d’informations sur csc.exe, consultez Options du compilateur C#.

Paramètres

Le tableau ci-dessous décrit les paramètres de la tâche Csc .

Paramètre Description
AdditionalLibPaths Paramètre String[] facultatif.

Spécifie des répertoires supplémentaires dans lesquels rechercher des références. Pour plus d’informations, consultez -lib (options du compilateur C#).
AddModules Paramètre String facultatif.

Spécifie un ou plusieurs modules à inclure dans cet assembly. Pour plus d’informations, consultez -addmodule (options du compilateur C#).
AllowUnsafeBlocks Paramètre Boolean facultatif.

Si true, compile le code qui utilise le mot clé unsafe. Pour plus d’informations, consultez -unsafe (options du compilateur C#).
ApplicationConfiguration Paramètre String facultatif.

Spécifie le fichier de configuration de l’application contenant les paramètres de liaison d’assembly.
BaseAddress Paramètre String facultatif.

Spécifie l'adresse de base préférée à laquelle charger une DLL. L’adresse de base par défaut d’une DLL est définie par le Common Language Runtime (CLR) .NET Framework. Pour plus d’informations, consultez -baseaddress (options du compilateur C#).
CheckForOverflowUnderflow Paramètre Boolean facultatif.

Indique si l’arithmétique sur les entiers qui dépasse les limites du type de données entraîne une exception au moment de l’exécution. Pour plus d’informations, consultez -checked (options du compilateur C#).
ChecksumAlgorithm Paramètre String facultatif.

Spécifie l'algorithme de calcul de la somme de contrôle du fichier source stockée dans le fichier PDB. L’algorithme doit être SHA1 (par défaut) ou SHA256. Voir ChecksumAlgorithm.
CodeAnalysisRuleset Paramètre String facultatif.

Spécifie un fichier ruleset qui désactive des diagnostics spécifiques. Voir CodeAnalysisRuleset.
CodePage Paramètre Int32 facultatif.

Spécifie la page de codes à utiliser pour tous les fichiers de code source inclus dans la compilation. Pour plus d’informations, consultez -codepage (options du compilateur C#).
DebugType Paramètre String facultatif.

Spécifie le type de débogage. DebugType peut avoir la valeur full ou pdbonly. La valeur par défaut est full, ce qui permet d’attacher un débogueur à un programme en cours d’exécution. La spécification de pdbonly active le débogage du code source lorsque le programme est démarré dans le débogueur, mais affiche uniquement un assembleur lorsque le programme en cours d’exécution est attaché au débogueur.

Ce paramètre remplace le paramètre EmitDebugInformation.

Pour plus d’informations, consultez -debug (options du compilateur C#).
DefineConstants Paramètre String facultatif.

Définit les symboles du préprocesseur. Pour plus d’informations, consultez -define (options du compilateur C#).
DelaySign Paramètre Boolean facultatif.

Si true, indique que vous souhaitez placer uniquement la clé publique dans l’assembly. Si false, indique que vous souhaitez obtenir un assembly complètement signé

Ce paramètre n’a aucun effet, sauf s’il est utilisé avec les paramètres KeyFile ou KeyContainer.

Pour plus d’informations, consultez -delaysign (options du compilateur C#).
Deterministic Paramètre Boolean facultatif.

Quand la valeur est true, indique au compilateur de générer un assembly dont le contenu binaire est identique dans les compilations si les entrées sont identiques.

Pour plus d’informations, consultez -deterministic (options du compilateur C#).
DisabledWarnings Paramètre String facultatif.

Spécifie la liste d’avertissements à désactiver. Pour plus d’informations, consultez -nowarn (options du compilateur C#).
DocumentationFile Paramètre String facultatif.

Traite les commentaires de documentation pour les diriger vers un fichier XML. Pour plus d’informations, consultez -doc (options du compilateur C#).
EmbedAllSources Paramètre Boolean facultatif.

Incorporer tous les fichiers sources du PDB. Pour plus d’informations, consultez -embed (options du compilateur C#).
EmitDebugInformation Paramètre Boolean facultatif.

Si true, la tâche génère des informations de débogage et les place dans un fichier de base de données du programme (.pdb). Si false, la tâche n’émet aucune information de débogage. La valeur par défaut est false. Pour plus d’informations, consultez -debug (options du compilateur C#).
ErrorLog Paramètre String facultatif.

Spécifie un fichier pour journaliser tous les diagnostics du compilateur et de l’analyseur. Voir ErrorLog.
ErrorReport Paramètre String facultatif.

Fournit un moyen pratique de signaler une erreur interne C# à Microsoft. Ce paramètre peut avoir la valeur prompt, send ou none. Si le paramètre est défini sur prompt, vous recevez une invite lorsqu’une erreur interne du compilateur se produit. Cette invite vous permet d’envoyer un rapport de bogue par voie électronique à Microsoft. Si le paramètre est défini sur send, un rapport de bogue est automatiquement envoyé. Si le paramètre est défini sur none, l’erreur est signalée uniquement dans la sortie de texte du compilateur. La valeur par défaut est none. Pour plus d’informations, consultez -errorreport (options du compilateur C#).
FileAlignment Paramètre Int32 facultatif.

Spécifie la taille des sections dans le fichier de sortie. Pour plus d’informations, consultez -filealign (options du compilateur C#).
GenerateFullPaths Paramètre Boolean facultatif.

Si true, spécifie le chemin d’accès absolu au fichier dans la sortie du compilateur. Si false, spécifie le nom du fichier. La valeur par défaut est false. Pour plus d’informations, consultez -fullpaths (options du compilateur C#).
HighEntropyVA Paramètre Boolean facultatif.

Activez la randomisation du layout de l’espace d’adressage haute entropie (ASLR). Voir HighEntropyVA.
KeyContainer Paramètre String facultatif.

Spécifie le nom du conteneur de la clé de chiffrement. Pour plus d’informations, consultez -keycontainer (options du compilateur C#).
KeyFile Paramètre String facultatif.

Spécifie le nom du fichier contenant la clé de chiffrement. Pour plus d’informations, consultez -keyfile (options du compilateur C#).
LangVersion Paramètre String facultatif.

Spécifie la version du langage à utiliser. Pour plus d’informations, consultez -langversion (options du compilateur C#).
LinkResources Paramètre ITaskItem[] facultatif.

Crée un lien à une ressource .NET Framework dans le fichier de sortie ; le fichier de ressources n’est pas placé dans le fichier de sortie.

Les éléments transmis dans ce paramètre peuvent posséder des entrées de métadonnées facultatives nommées LogicalName et Access. LogicalName correspond au paramètre identifier du commutateur /linkresource, et Access correspond au paramètre accessibility-modifier. Pour plus d’informations, consultez -linkresource (options du compilateur C#).
MainEntryPoint Paramètre String facultatif.

Spécifie l’emplacement de la méthode Main. Pour plus d’informations, consultez -main (options du compilateur C#).
ModuleAssemblyName Paramètre String facultatif.

Spécifie le nom de l’assembly dont ce module doit faire partie.
NoConfig Paramètre Boolean facultatif.

Si la valeur est true, indique au compilateur de ne pas compiler avec le fichier csc.rsp. Pour plus d’informations, consultez -noconfig (options du compilateur C#).
NoLogo Paramètre Boolean facultatif.

Si true, supprime l’affichage des informations de bannière du compilateur. Pour plus d’informations, consultez -nologo (options du compilateur C#).
NoStandardLib Paramètre Boolean facultatif.

Si sa valeur est true, empêche l’importation de mscorlib.dll, qui définit la totalité de l’espace de noms système. Utilisez ce paramètre si vous souhaitez définir ou créer vos propres objets et espace de noms système. Pour plus d’informations, consultez -nostdlib (options du compilateur C#).
NoWin32Manifest Paramètre Boolean facultatif.

Si true, n’inclut pas le manifeste Win32 par défaut.
Nullable Paramètre String facultatif.

Spécifie le contexte nullable. L’argument doit être l’un des arguments enable, disable, warnings ou annotations. Voir Nullable.
Optimize Paramètre Boolean facultatif.

Si true, active les optimisations. Si false, désactive les optimisations. Pour plus d’informations, consultez -optimize (options du compilateur C#).
OutputAssembly Paramètre de sortie String facultatif.

Spécifie le nom du fichier de sortie. Pour plus d’informations, consultez -out (options du compilateur C#).
OutputRefAssembly Paramètre String facultatif.

Spécifie le nom du fichier d’assembly de la référence de sortie. Pour plus d’informations, consultez -refout (options du compilateur C#).
PathMap Paramètre String facultatif.

Valeur qui indique comment mapper les chemins d’accès physiques avec les noms de chemins d’accès sources générés en sortie par le compilateur. Voir PathMap.
PdbFile Paramètre String facultatif.

Spécifie le nom de fichier des informations de débogage. Le nom par défaut est le nom du fichier de sortie avec l’extension .pdb.
Platform Paramètre String facultatif.

Spécifie la plateforme de processeur ciblée par le fichier de sortie. Ce paramètre peut avoir la valeur x86, x64 ou anycpu. La valeur par défaut est anycpu. Pour plus d’informations, consultez -platform (options du compilateur C#).
PreferredUILang Paramètre String facultatif.

Spécifie la langue dans laquelle le compilateur C# affiche la sortie, comme les messages d’erreur. Voir PreferredUILang.
PublicSign Paramètre Boolean facultatif.

Signez publiquement l’assembly de sortie. Voir PublicSign.
References Paramètre ITaskItem[] facultatif.

Provoque l’importation par la tâche des informations de type public dans le projet actuel à partir des éléments spécifiés. Pour plus d’informations, consultez -reference (options du compilateur C#).

Vous pouvez spécifier un alias de référence C# dans un fichier MSBuild en ajoutant les métadonnées Aliases à l’élément « Reference » d’origine. Par exemple, pour définir l’alias « LS1 » dans la ligne de commande CSC suivante :

CSC /r:LS1=MyCodeLibrary.dll /r:LS2=MyCodeLibrary2.dll *.cs

Vous devez utiliser :

<Reference Include="MyCodeLibrary"> <Aliases>LS1</Aliases> </Reference>
RefOnly Paramètre Boolean facultatif.

Produisez un assembly de référence, au lieu d’un assembly complet, en tant que sortie principale. Voir ProduceOnlyReferenceAssembly.
ReportAnalyzer Paramètre Boolean facultatif.

Créer un rapport sur les informations supplémentaires de l’analyseur, comme l’heure d’exécution. Voir ReportAnalyzer.
Resources Paramètre ITaskItem[] facultatif.

Incorpore une ressource .NET Framework dans le fichier de sortie.

Les éléments transmis dans ce paramètre peuvent posséder des entrées de métadonnées facultatives nommées LogicalName et Access. LogicalName correspond au paramètre identifier du commutateur /resource, et Access correspond au paramètre accessibility-modifier. Pour plus d’informations, consultez -resource (options du compilateur C#).
ResponseFiles Paramètre String facultatif.

Spécifie le fichier réponse qui contient les commandes correspondant à cette tâche. Pour plus d’informations, consultez @ (Spécifier un fichier réponse).
Sources Paramètre ITaskItem[] facultatif.

Spécifie un ou plusieurs fichiers sources C#.
TargetType Paramètre String facultatif.

Spécifie le format de fichier du fichier de sortie. Ce paramètre peut avoir la valeur library, qui crée une bibliothèque de codes, exe, qui crée une application console, module, qui crée un module, ou winexe, qui crée un programme Windows. La valeur par défaut est library. Pour plus d’informations, consultez -target (options du compilateur C#).
TreatWarningsAsErrors Paramètre Boolean facultatif.

Si true, traite tous les avertissements comme des erreurs. Pour plus d’informations, consultez -warnaserror (options du compilateur C#).
UseHostCompilerIfAvailable Paramètre Boolean facultatif.

Demande à la tâche d’utiliser l’objet de compilateur in-process s’il est disponible. Utilisé uniquement par Visual Studio.
Utf8Output Paramètre Boolean facultatif.

Enregistre les résultats de la compilation au format d’encodage UTF-8. Pour plus d’informations, consultez -utf8output (options du compilateur C#).
WarningLevel Paramètre Int32 facultatif.

Spécifie le niveau d’avertissement que le compilateur doit afficher. Pour plus d’informations, consultez -warn (options du compilateur C#).
WarningsAsErrors Paramètre String facultatif.

Spécifie une liste d'avertissements à traiter comme des erreurs. Pour plus d’informations, consultez -warnaserror (options du compilateur C#).

Ce paramètre remplace le paramètre TreatWarningsAsErrors.
WarningsNotAsErrors Paramètre String facultatif.

Spécifie une liste d'avertissements à ne pas traiter comme des erreurs. Pour plus d’informations, consultez -warnaserror (options du compilateur C#).

Ce paramètre est utile uniquement si le paramètre TreatWarningsAsErrors est défini sur true.
Win32Icon Paramètre String facultatif.

Insère un fichier .ico dans l’assembly, ce qui donne au fichier de sortie l’apparence souhaitée dans l’Explorateur de fichiers. Pour plus d’informations, consultez -win32icon (options du compilateur C#).
Win32Manifest Paramètre String facultatif.

Spécifie le manifeste Win32 à inclure.
Win32Resource Paramètre String facultatif.

Insère un fichier de ressources Win32 (.res) dans le fichier de sortie. Pour plus d’informations, consultez -win32res (options du compilateur C#).

Paramètres ToolTaskExtension

Cette tâche hérite de la classe ToolTaskExtension, laquelle hérite de la classe ToolTask, qui hérite elle-même de la classe Task. Cette chaîne d'héritage ajoute plusieurs paramètres aux tâches qui en dérivent.

Le tableau ci-dessous décrit les paramètres des classes de base :

Paramètre Description
EchoOff Paramètre bool facultatif.

Quand la valeur est true, cette tâche passe /Q à la ligne de commande cmd.exe de telle manière que cette dernière ne soit pas copiée dans stdout.
EnvironmentVariables Paramètres de tableau String facultatif.

Tableau de définitions de variables d’environnement, séparées par des points-virgules. Chaque définition devrait spécifier un nom et une valeur de variable d’environnement séparés par un signe égal. Ces variables sont transmises à l'exécutable généré en plus ou en remplacement sélectif du bloc environnement normal. Par exemple : Variable1=Value1;Variable2=Value2.
ExitCode Paramètre en lecture seule de sortie Int32 facultatif.

Spécifie le code de sortie fourni par la commande exécutée. Si la tâche a journalisé des erreurs, alors que le processus avait un code de sortie de 0 (réussite), ce paramètre prend la valeur -1.
LogStandardErrorAsError Paramètre bool facultatif.

Si la valeur est true, tous les messages reçus sur le flux d'erreur standard sont journalisés en tant qu'erreurs.
StandardErrorImportance Paramètre String facultatif.

Importance avec laquelle le texte doit être enregistré dans le flux d’erreur standard.
StandardOutputImportance Paramètre String facultatif.

Importance avec laquelle le texte doit être enregistré dans le flux de sortie standard.
Timeout Paramètre Int32 facultatif.

Spécifie le délai, en millisecondes, après lequel l’exécutable de la tâche est arrêté. La valeur par défaut est Int.MaxValue, ce qui indique qu’il n’existe aucun délai d’expiration. Délai d’expiration en millisecondes.
ToolExe Paramètre string facultatif.

Les projets peuvent l'implémenter pour remplacer un ToolName. Les tâches peuvent le remplacer pour préserver le ToolName.
ToolPath Paramètre string facultatif.

Spécifie l’emplacement à partir duquel la tâche charge le fichier exécutable sous-jacent. Si ce paramètre n'est pas spécifié, la tâche utilise le chemin d'installation du SDK qui correspond à la version de l'infrastructure qui exécute MSBuild.
UseCommandProcessor Paramètre bool facultatif.

Quand la valeur est true, cette tâche crée un fichier de commandes pour la ligne de commande et l'exécute à l'aide de l'interpréteur de commandes au lieu d'exécuter la commande directement.
YieldDuringToolExecution Paramètre bool facultatif.

Quand la valeur est true, cette tâche donne le nœud quand sa tâche s'exécute.

Exemple

L’exemple suivant utilise la tâche Csc pour compiler un fichier exécutable à partir des fichiers sources de la collection d’éléments Compile.

<CSC
    Sources="@(Compile)"
    OutputAssembly="$(AppName).exe"
    EmitDebugInformation="true" />

Voir aussi