업데이트: 2007년 11월
CSC.exe를 래핑하고 실행 파일(.exe 파일), 동적 연결 라이브러리(.dll 파일) 또는 코드 모듈(.netmodule 파일을)을 생성합니다. CSC.exe에 대한 자세한 내용은 C# 컴파일러 옵션을 참조하십시오.
매개 변수
다음 표에서는 Csc 작업의 매개 변수에 대해 설명합니다.
매개 변수 |
설명 |
---|---|
AdditionalLibPaths |
선택적 String[] 매개 변수입니다. 참조를 검색할 추가 디렉터리를 지정합니다. 자세한 내용은 /lib(어셈블리 참조 위치 지정) (C# 컴파일러 옵션)를 참조하십시오. |
AddModules |
선택적 String 매개 변수입니다. 해당 어셈블리의 일부가 될 모듈을 하나 이상 지정합니다. 자세한 내용은 /addmodule(메타데이터 가져오기) (C# 컴파일러 옵션)을 참조하십시오. |
AllowUnsafeBlocks |
선택적 Boolean 매개 변수입니다. true이면 unsafe 키워드를 사용하는 코드를 컴파일합니다. 자세한 내용은 /unsafe(Unsafe 모드 사용)(C# 컴파일러 옵션)를 참조하십시오. |
BaseAddress |
선택적 String 매개 변수입니다. DLL을 로드할 기본 설정 기준 주소를 지정합니다. DLL의 기본 기준 주소는 .NET Framework 공용 언어 런타임에 의해 설정됩니다. 자세한 내용은 /baseaddress(DLL의 기준 주소 지정) (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# 내부 오류를 Microsoft에 간편하게 보고할 수 있습니다. 이 매개 변수의 값으로는 prompt, send 또는 none을 사용할 수 있습니다. 이 매개 변수를 prompt로 설정할 경우 내부 컴파일러 오류가 발생하면 프롬프트가 나타납니다. 이 프롬프트를 사용하면 버그 보고서를 Microsoft에 온라인으로 전송할 수 있습니다. 이 매개 변수를 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은 /linkresource 스위치의 identifier 매개 변수에 해당하고, Access는 accessibility-modifier 매개 변수에 해당합니다. 자세한 내용은 /linkresource(.NET Framework 리소스에 대한 링크)(C# 컴파일러 옵션)를 참조하십시오. |
MainEntryPoint |
선택적 String 매개 변수입니다. Main 메서드의 위치를 지정합니다. 자세한 내용은 /main(Main 메서드의 위치 지정)(C# 컴파일러 옵션)을 참조하십시오. |
NoConfig |
선택적 Boolean 매개 변수입니다. true이면 컴파일러에서 csc.rsp 파일을 사용하여 컴파일하지 않도록 지시합니다. 자세한 내용은 /noconfig(csc.rsp 무시) (C# 컴파일러 옵션)를 참조하십시오. |
NoLogo |
선택적 Boolean 매개 변수입니다. true이면 컴파일러 배너 정보를 표시하지 않습니다. 자세한 내용은 /nologo(배너 정보 표시 안 함)(C# 컴파일러 옵션)를 참조하십시오. |
NoStandardLib |
선택적 Boolean 매개 변수입니다. true이면 전체 시스템 네임스페이스를 정의하는 mscorlib.dll을 가져오지 않습니다. 사용자 고유 시스템 네임스페이스 및 개체를 정의하거나 만들려면 이 매개 변수를 사용합니다. 자세한 내용은 /nostdlib(표준 라이브러리 가져오지 않음) (C# 컴파일러 옵션)를 참조하십시오. |
Optimize |
선택적 Boolean 매개 변수입니다. true이면 최적화 기능을 활성화합니다. false이면 최적화를 사용하지 않습니다. 자세한 내용은 /optimize(최적화 활성화/비활성화)(C# 컴파일러 옵션)를 참조하십시오. |
OutputAssembly |
선택적 String 출력 매개 변수입니다. 출력 파일의 이름을 지정합니다. 자세한 내용은 /out(출력 파일 이름 설정)(C# 컴파일러 옵션)을 참조하십시오. |
Platform |
선택적 String 매개 변수입니다. 출력 파일에서 대상으로 삼을 프로세서 플랫폼을 지정합니다. 이 매개 변수의 값으로는 x86, x64 또는 anycpu를 사용할 수 있습니다. 기본값은 anycpu입니다. 자세한 내용은 /platform(출력 플랫폼 지정) (C# 컴파일러 옵션)을 참조하십시오. |
References |
선택적 ITaskItem[] 매개 변수입니다. 작업에서 지정된 항목의 공개 형식 정보를 현재 프로젝트에 가져올 수 있도록 합니다. 자세한 내용은 /reference(메타데이터 가져오기)(C# 컴파일러 옵션)를 참조하십시오. 원래 "참조" 항목에 메타데이터 Aliases를 추가하면 MSBuild 파일에서 Visual C# 참조 별칭을 지정할 수 있습니다. 예를 들어 별칭 "LS1"을 설정하려면 다음 CSC 명령줄을 사용합니니다.
그런 다음 아래와 같이 사용합니다.
|
Resources |
선택적 ITaskItem[] 매개 변수입니다. 출력 파일에 .NET Framework 리소스를 포함합니다. 이 매개 변수에 전달되는 항목에는 LogicalName 및 Access라는 선택적 메타데이터 엔트리가 연결될 수 있습니다. LogicalName은 /resource 스위치의 identifier 매개 변수에 해당하고, Access는 accessibility-modifier 매개 변수에 해당합니다. 자세한 내용은 /resource(출력 파일에 리소스 파일 포함)(C# 컴파일러 옵션)를 참조하십시오. |
ResponseFiles |
선택적 String 매개 변수입니다. 이 작업에 대한 명령이 들어 있는 지시 파일을 지정합니다. 자세한 내용은 @(지시 파일 지정) (C# 컴파일러 옵션)을 참조하십시오. |
Sources |
선택적 ITaskItem[] 매개 변수입니다. 하나 이상의 Visual C# 소스 파일을 지정합니다. |
TargetType |
선택적 String 매개 변수입니다. 출력 파일의 파일 형식을 지정합니다. 이 매개 변수의 값으로는 코드 라이브러리를 만드는 library, 콘솔 응용 프로그램을 만드는 exe, 모듈을 만드는 module 또는 Windows 프로그램을 만드는 winexe를 사용할 수 있습니다. 기본값은 library입니다. 자세한 내용은 /target(출력 파일 형식 지정) (C# 컴파일러 옵션)을 참조하십시오. |
Timeout |
선택적 Int32 매개 변수입니다. 작업 실행 파일이 얼마 후에 종료될 지를 밀리초 단위로 지정합니다. 기본값은 제한 시간이 없음을 나타내는 Int.MaxValue입니다. |
ToolPath |
선택적 String 매개 변수입니다. 작업에서 내부 실행 파일(CSC.exe)을 로드할 위치를 지정합니다. 이 매개 변수를 지정하지 않으면 작업에서는 MSBuild를 실행하고 있는 버전의 Framework에 해당하는 SDK 설치 경로가 사용됩니다. |
TreatWarningsAsErrors |
선택적 Boolean 매개 변수입니다. true이면 모든 경고를 오류로 취급합니다. 자세한 내용은 /warnaserror(경고를 오류로 처리)(C# 컴파일러 옵션)를 참조하십시오. |
UseHostCompilerIfAvailable |
선택적 Boolean 매개 변수입니다. 작업에서 가능한 경우 in-process 컴파일러 개체를 사용하도록 지시합니다. Visual Studio에만 사용됩니다. |
Utf8Output |
선택적 Boolean 매개 변수입니다. UTF-8 인코딩을 사용하여 컴파일러 출력을 기록합니다. 자세한 내용은 /utf8output(UTF-8로 컴파일러 메시지 표시)(C# 컴파일러 옵션)을 참조하십시오. |
WarningLevel |
선택적 Int32 매개 변수입니다. 표시할 컴파일러 경고 수준을 지정합니다. 자세한 내용은 /warn(경고 수준 지정)(C# 컴파일러 옵션)을 참조하십시오. |
WarningsAsErrors |
선택적 String 매개 변수입니다. 오류로 취급할 경고 목록을 지정합니다. 자세한 내용은 /warnaserror(경고를 오류로 처리)(C# 컴파일러 옵션)를 참조하십시오. 이 매개 변수는 TreatWarningsAsErrors 매개 변수를 재정의합니다. |
WarningsNotAsErrors |
선택적 String 매개 변수입니다. 오류로 취급하지 않을 경고 목록을 지정합니다. 자세한 내용은 /warnaserror(경고를 오류로 처리)(C# 컴파일러 옵션)를 참조하십시오. 이 매개 변수는 TreatWarningsAsErrors 매개 변수를 true로 설정한 경우에만 사용됩니다. |
WarningLevel |
선택적 Int32 매개 변수입니다. 적절한 경고 수준(0-4)을 설정합니다. 자세한 내용은 /warn(경고 수준 지정)(C# 컴파일러 옵션)을 참조하십시오. |
Win32Icon |
선택적 String 매개 변수입니다. Windows 탐색기에서 출력 파일을 원하는 모양으로 표시할 수 있도록 .ico 파일을 어셈블리에 삽입합니다. 자세한 내용은 /win32icon(.ico 파일 가져오기)(C# 컴파일러 옵션)을 참조하십시오. |
Win32Resource |
선택적 String 매개 변수입니다. Win32 리소스 파일(.res)을 출력 파일에 삽입합니다. 자세한 내용은 /win32res(Win32 리소스 파일 가져오기)(C# 컴파일러 옵션)를 참조하십시오. |
예제
다음 예제에서는 Compile 항목 컬렉션의 소스 파일을 사용하여 실행 파일을 컴파일하기 위해 Csc 작업을 사용합니다.
<CSC
Sources="@(Compile)"
OutputAssembly="$(AppName).exe"
EmitDebugInformation="true" />