Поделиться через


Задача 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:

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

Для этого используется следующий код:

<Reference Include="MyCodeLibrary">
  <Aliases>LS1</Aliases>
</Reference>

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-файл в сборку, которая присваивает выходному файлу нужного обозревателе файла внешнего вида.Дополнительные сведения см. в разделе /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" />

См. также

Основные понятия

Задачи MSBuild

Другие ресурсы

Справочные сведения о задачах MSBuild