Задача Csc
Создает программу-оболочку для файла CSC.exe и создает исполняемые файлы (EXE-файлы), библиотеки динамической компоновки (DLL-файлы) и модули кода ( NETMODULE-файлы). Дополнительные сведения о программе CSC.EXE см. в разделе Параметры компилятора C#.
Параметры
В следующей таблице описаны параметры задачи Csc.
Параметр |
Описание |
---|---|
AdditionalLibPaths |
Необязательный параметр типа String[]. Задает дополнительные папки для поиска ссылок. Дополнительные сведения см. в разделе /lib (параметры компилятора C#). |
AddModules |
Необязательный параметр типа String. Задает один или несколько модулей, которые войдут в сборку. Дополнительные сведения см. в разделе /addmodule (параметры компилятора C#). |
AllowUnsafeBlocks |
Необязательный параметр типа Boolean. Если этот параметр равен true, то выполняется компиляция кода, в котором используется ключевое слово unsafe. Дополнительные сведения см. в разделе /unsafe (параметры компилятора C#). |
ApplicationConfiguration |
Необязательный параметр типа String. Файл конфигурации приложения, содержащий параметры привязки сборки. |
BaseAddress |
Необязательный параметр типа String. Задает предпочтительный базовый адрес для загрузки библиотеки DLL. Базовый адрес по умолчанию для библиотеки DLL задается в среде CLR .NET Framework. Дополнительные сведения см. в разделе /baseaddress (параметры компилятора C#). |
CheckForOverflowUnderflow |
Необязательный параметр типа Boolean. Указывает, должны ли целочисленные арифметические операции, вызывающие переполнение типа данных, вызывать исключение во время выполнения. Дополнительные сведения см. в разделе /checked (параметры компилятора C#). |
CodePage |
Необязательный параметр типа Int32. Задает кодовую страницу, которая должна использоваться для всех файлов исходного кода при компиляции. Дополнительные сведения см. в разделе /codepage (параметры компилятора C#). |
DebugType |
Необязательный параметр типа String. Задает тип отладки. DebugType может равняться full или pdbonly. По умолчанию задано значение full, разрешающее подключение отладчика к исполняемой программе. Значение pdbonly разрешает отладку исходного кода при запуске программы в отладчике, но при этом ассемблерный код отображается только при подключении исполняемой программы к отладчику. Этот параметр переопределяет параметр EmitDebugInformation. Дополнительные сведения см. в разделе /debug (параметры компилятора C#). |
DefineConstants |
Необязательный параметр типа String. Определяет символы препроцессора. Дополнительные сведения см. в разделе /define (параметры компилятора C#). |
DelaySign |
Необязательный параметр типа Boolean. Значение, равное true, предписывает создание полностью подписанной сборки. Значение, равное false, предписывает только поместить в сборку открытый ключ. Этот параметр не имеет эффекта, если не используется вместе с параметром KeyFile или KeyContainer. Дополнительные сведения см. в разделе /delaysign (параметры компилятора C#). |
DisabledWarnings |
Необязательный параметр типа String. Задает список предупреждений, которые следует отключить. Дополнительные сведения см. в разделе /nowarn (параметры компилятора C#). |
DocumentationFile |
Необязательный параметр типа String. Обрабатывает комментарии для документации и помещает их в XML-файл. Дополнительные сведения см. в разделе /doc (параметры компилятора C#). |
EmitDebugInformation |
Необязательный параметр типа Boolean. Если этот параметр равен true, задача генерирует отладочную информацию и помещает ее в файл базы данных программы (PDB-файл). Если задано значение false, задача не генерирует отладочную информацию. По умолчанию используется значение false. Дополнительные сведения см. в разделе /debug (параметры компилятора C#). |
ErrorReport |
Необязательный параметр типа String. Представляет собой удобный способ для сообщения о внутренней ошибке C# в корпорацию Майкрософт. Этот параметр может иметь следующие значения: prompt, send или none. Если установлено значение prompt, в случае внутренней ошибки компилятора будет выведено сообщение. с предложением отправить электронный отчет об ошибке в корпорацию Майкрософт. Если установлено значение send, сообщение об ошибке отправляется автоматически. Если установлено значение none, отчет об ошибке выводится только в текстовых выходных данных компилятора. По умолчанию используется значение none. Дополнительные сведения см. в разделе /errorreport (параметры компилятора C#). |
FileAlignment |
Необязательный параметр типа Int32. Задает размер разделов в выходном файле. Дополнительные сведения см. в разделе /filealign (параметры компилятора C#). |
GenerateFullPaths |
Необязательный параметр типа Boolean. Если этот параметр равен true, то в выходных компилятора задается абсолютный путь к файлу. Если установлено значение false, задается имя файла. По умолчанию используется значение false. Дополнительные сведения см. в разделе /fullpaths (параметры компилятора C#). |
KeyContainer |
Необязательный параметр типа String. Задает имя контейнера криптографического ключа. Дополнительные сведения см. в разделе /keycontainer (параметры компилятора C#). |
KeyFile |
Необязательный параметр типа String. Задает имя файла, содержащего криптографический ключ. Дополнительные сведения см. в разделе /keyfile (параметры компилятора C#). |
LangVersion |
Необязательный параметр типа String. Задает используемую версию языка. Дополнительные сведения см. в разделе /langversion (параметры компилятора C#). |
LinkResources |
Необязательный параметр ITaskItem[] . Создает ссылку на ресурс .NET Framework в выходном файле; файл ресурса не помещается в выходной файл. Элементы, передаваемые в этот параметр, могут иметь необязательные метаданные LogicalName и Access. LogicalName соответствует аргументу identifier параметра /linkresource, а Access соответствует аргументу accessibility-modifier. Дополнительные сведения см. в разделе /linkresource (параметры компилятора C#). |
MainEntryPoint |
Необязательный параметр типа String. Задает местоположение метода Main. Дополнительные сведения см. в разделе /main (параметры компилятора C#). |
ModuleAssemblyName |
Необязательный параметр типа String. Задается имя сборки, частью которой будет данный модуль. |
NoConfig |
Необязательный параметр типа Boolean. Значение true предписывает компилятору не использовать файл CSC.RSP. Дополнительные сведения см. в разделе /noconfig (параметры компилятора C#). |
NoLogo |
Необязательный параметр типа Boolean. Если этот параметр равен true, отображение заголовка компилятора отключается. Дополнительные сведения см. в разделе /nologo (параметры компилятора C#). |
NoStandardLib |
Необязательный параметр типа Boolean. Значение true отключает импорт библиотеки mscorlib.dll, определяющей все пространство имен System. Используйте этот параметр в случае, если вам необходимо определить или создать собственное пространство имен System и соответствующие объекты. Дополнительные сведения см. в разделе /nostdlib (параметры компилятора C#). |
NoWin32Manifest |
Необязательный параметр типа Boolean. Если true, не включать манифест Win32 по умолчанию. |
Optimize |
Необязательный параметр типа Boolean. Значение true включает оптимизации. Значение false отключает оптимизации. Дополнительные сведения см. в разделе /optimize (параметры компилятора C#). |
OutputAssembly |
Необязательный выходной параметр String. Задает имя выходного файла. Дополнительные сведения см. в разделе /out (параметры компилятора C#). |
PdbFile |
Необязательный параметр типа String. Задает имя файла отладочной информации. Имя по умолчанию — имя файла выходных данных с расширением PDB. |
Platform |
Необязательный параметр типа String. Задает платформу процессора, для которой следует создавать выходной файл. Этот параметр может иметь следующие значения: x86, x64 или anycpu. По умолчанию используется значение anycpu. Дополнительные сведения см. в разделе /platform (параметры компилятора C#). |
References |
Необязательный параметр ITaskItem[] . Вызывает импорт задачей информации об открытых типах из заданных элементов в текущий проект. Дополнительные сведения см. в разделе /reference (параметры компилятора C#). Вы можете задать псевдоним ссылки Visual C# в файле MSBuild, добавив метаданные Aliases к исходному элементу "Reference". Например, пусть требуется установить псевдоним "LS1" в следующей командной строке CSC:
Для этого используется следующий код:
|
Resources |
Необязательный параметр ITaskItem[] . Внедряет ресурс .NET Framework в выходной файл. Элементы, передаваемые в этот параметр, могут иметь необязательные метаданные LogicalName и Access. LogicalName соответствует аргументу identifier параметра /resource, а Access соответствует аргументу accessibility-modifier. Дополнительные сведения см. в разделе /resource (параметры компилятора C#). |
ResponseFiles |
Необязательный параметр типа String. Задает файл ответов, содержащий команды для данной задачи. Дополнительные сведения см. в разделе @ (параметры компилятора C#). |
Sources |
Необязательный параметр ITaskItem[]. Задает один или несколько исходных файлов Visual C#. |
TargetType |
Необязательный параметр типа String. Задает формат выходного файла. Этот параметр может принимать одно из следующих значений: library (создается библиотека кода), exe (создается консольное приложение), module (создается модуль) или winexe (создается Windows-программа). Значение по умолчанию — library. Дополнительные сведения см. в разделе /target (параметры компилятора C#). |
TreatWarningsAsErrors |
Необязательный параметр типа Boolean. Если этот параметр равен true, все предупреждения обрабатываются как ошибки. Дополнительные сведения см. в разделе /warnaserror (параметры компилятора C#). |
UseHostCompilerIfAvailable |
Необязательный параметр типа Boolean. Предписывает задаче использовать внутрипроцессный объект компилятора, если он доступен. Используется только Visual Studio. |
Utf8Output |
Необязательный параметр типа Boolean. Регистрирует выходные данные компилятора в кодировке UTF-8. Дополнительные сведения см. в разделе /utf8output (параметры компилятора C#). |
WarningLevel |
Необязательный параметр типа Int32. Задает уровень предупреждений, которые должны отображаться компилятором. Дополнительные сведения см. в разделе /warn (параметры компилятора C#). |
WarningsAsErrors |
Необязательный параметр типа String. Задает список предупреждений, которые следует обрабатывать как ошибки. Дополнительные сведения см. в разделе /warnaserror (параметры компилятора C#). Этот параметр переопределяет параметр TreatWarningsAsErrors. |
WarningsNotAsErrors |
Необязательный параметр типа String. Задает список предупреждений, которые не следует обрабатывать как ошибки. Дополнительные сведения см. в разделе /warnaserror (параметры компилятора C#). Этот параметр имеет смысл только в том случае, если параметр TreatWarningsAsErrors имеет значение true. |
Win32Icon |
Необязательный параметр типа String. Внедряет в сборку ICO-файл, который придает выходному файлу требуемый вид в проводнике Windows. Дополнительные сведения см. в разделе /win32icon (параметры компилятора C#). |
Win32Manifest |
Необязательный параметр типа String. Задает манифест Win32, который необходимо включить. |
Win32Resource |
Необязательный параметр типа String. Внедряет файл ресурсов Win32 (RES-файл) в выходной файл. Дополнительные сведения см. в разделе /win32res (параметры компилятора C#). |
Заметки
Помимо параметров, которые перечислены выше, эта задача наследует параметры от класса Microsoft.Build.Tasks.ManagedCompiler, который наследует от классаToolTaskExtension, который в свою очередь наследует от класса ToolTask. Чтобы получить список этих доп параметров и их описаний, см. Базовый класс ToolTaskExtension.
Пример
В следующем примере задача Csc используется для создания исполняемого файла из исходных файлов в коллекции элементов Compile.
<CSC
Sources="@(Compile)"
OutputAssembly="$(AppName).exe"
EmitDebugInformation="true" />