컴파일러 출력의 형식을 지정합니다.
문법
-target:{exe | library | module | winexe | appcontainerexe | winmdobj}
비고
다음 표에서는 옵션의 효과를 요약합니다 -target .
| 옵션 | 동작 |
|---|---|
-target:exe |
컴파일러가 실행 콘솔 애플리케이션을 만들도록 합니다. 옵션이 지정되지 않은 -target 경우 기본 옵션입니다. 실행 파일은 .exe 확장자를 사용하여 만들어집니다.옵션으로 -out 달리 지정하지 않는 한 출력 파일 이름은 프로시저가 포함된 Sub Main 입력 파일의 이름을 사용합니다..exe 파일로 컴파일되는 소스 코드 파일에는 하나의 Sub Main 프로시저만 필요합니다.
-main 컴파일러 옵션을 사용하여 프로시저가 포함된 클래스를 Sub Main 지정합니다. |
-target:library |
컴파일러가 DLL(동적 연결 라이브러리)을 만들도록 합니다. 동적 연결 라이브러리 파일은 .dll 확장으로 만들어집니다. 옵션으로 -out 달리 지정하지 않는 한 출력 파일 이름은 첫 번째 입력 파일의 이름을 사용합니다.DLL을 빌드할 때는 프로시저가 Sub Main 필요하지 않습니다. |
-target:module |
컴파일러가 어셈블리에 추가할 수 있는 모듈을 생성하도록 합니다. 출력 파일은 확장명은 .netmodule로 만들어집니다. .NET 공용 언어 런타임은 어셈블리가 없는 파일을 로드할 수 없습니다. 그러나 이러한 파일을 사용하여 -reference어셈블리의 어셈블리 매니페스트에 통합할 수 있습니다.한 모듈의 코드가 다른 모듈의 내부 형식을 참조하는 경우 두 모듈을 모두 사용하여 -reference어셈블리 매니페스트에 통합해야 합니다.-addmodule 옵션은 모듈에서 메타데이터를 가져옵니다. |
-target:winexe |
컴파일러가 실행 가능한 Windows 기반 애플리케이션을 만들도록 합니다. 실행 파일은 .exe 확장자를 사용하여 만들어집니다. Windows 기반 애플리케이션은 .NET Framework 클래스 라이브러리 또는 Windows API에서 사용자 인터페이스를 제공하는 애플리케이션입니다. 옵션으로 -out 달리 지정하지 않는 한 출력 파일 이름은 프로시저가 포함된 Sub Main 입력 파일의 이름을 사용합니다..exe 파일로 컴파일되는 소스 코드 파일에는 하나의 Sub Main 프로시저만 필요합니다. 코드에 프로시저가 있는 클래스가 Sub Main 두 개 이상 있는 경우 컴파일러 옵션을 사용하여 -main 프로시저가 포함된 클래스를 Sub Main 지정합니다. |
-target:appcontainerexe |
컴파일러가 앱 컨테이너에서 실행되어야 하는 실행 가능한 Windows 기반 애플리케이션을 만들도록 합니다. 이 설정은 Windows 8.x 스토어 애플리케이션에 사용하도록 설계되었습니다. appcontainerexe 설정은 이식 가능한 실행 파일의 특성 필드에 비트를 설정합니다. 이 비트는 앱 컨테이너에서 앱을 실행해야 임을 나타냅니다. 이 비트를 설정하면 메서드가 앱 컨테이너 외부에서 애플리케이션을 시작하려고 하면 오류가 발생 CreateProcess 합니다. 이 비트 설정 외에도 -target:appcontainerexe 는 -target:winexe와 동일합니다.실행 파일은 .exe 확장자를 사용하여 만들어집니다. 옵션을 사용하여 -out 달리 지정하지 않는 한 출력 파일 이름은 프로시저가 포함된 Sub Main 입력 파일의 이름을 사용합니다..exe 파일로 컴파일되는 소스 코드 파일에는 하나의 Sub Main 프로시저만 필요합니다. 코드에 프로시저가 있는 클래스가 Sub Main 두 개 이상 포함된 경우 컴파일러 옵션을 사용하여 -main 프로시저가 포함된 클래스를 Sub Main 지정합니다. |
-target:winmdobj |
컴파일러가 Windows 런타임 이진 파일(.winmd) 파일로 변환할 수 있는 중간 파일을 만듭니다. .winmd 파일은 관리되는 언어 프로그램 외에도 JavaScript 및 C++ 프로그램에서 사용할 수 있습니다. 중간 파일은 .winmdobj 확장자를 사용하여 만들어집니다. 옵션을 사용하여 -out 달리 지정하지 않는 한 출력 파일 이름은 첫 번째 입력 파일의 이름을 사용합니다.
Sub Main 프로시저가 필요하지 않습니다..winmdobj 파일은 내보내기 도구의 입력 WinMDExp 으로 사용하여 WinMD(Windows 메타데이터) 파일을 생성하도록 설계되었습니다. WinMD 파일에는 .winmd 확장이 있으며 원래 라이브러리의 코드와 JavaScript, C++, Windows 런타임에서 사용하는 WinMD 정의가 모두 포함되어 있습니다. |
지정 -target:module-target 하지 않으면 .NET Framework 어셈블리 매니페스트가 출력 파일에 추가됩니다.
Vbc.exe 각 인스턴스는 최대 하나의 출력 파일을 생성합니다. 두 번 이상 같은 -out-target 컴파일러 옵션을 지정하면 컴파일러가 처리하는 마지막 옵션이 적용됩니다. 컴파일의 모든 파일에 대한 정보가 매니페스트에 추가됩니다. 매니페스트에 어셈블리 메타데이터를 포함하여 -target:module 만든 파일을 제외한 모든 출력 파일입니다.
Ildasm.exe(IL 디스어셈블러)를 사용하여 출력 파일에서 메타데이터를 봅니다.
짧은 형식 -target 은 .입니다 -t.
Visual Studio IDE에서 -target 설정하려면
솔루션 탐색기에서 프로젝트를 선택해야 합니다. 프로젝트 메뉴에서 속성을 클릭합니다.
애플리케이션 탭을 클릭합니다.
애플리케이션 유형 상자에서 값을 수정합니다.
예시
다음 코드는 컴파일하여 다음을 만듭니다in.dll.in.vb
vbc -target:library in.vb
참고하십시오
- Visual Basic Command-Line 컴파일러
- -메인
- -out(Visual Basic)
- -reference(Visual Basic)
- -addmodule
- -moduleassemblyname
- .NET의 어셈블리
- 샘플 컴파일 명령줄
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET