다음을 통해 공유


방법: .NET Framework 단일 파일 어셈블리 빌드

참고 항목

이 문서는 .NET Framework와 관련이 있습니다. .NET 6 이상 버전을 비롯하여 .NET의 최신 구현에는 적용되지 않습니다.

가장 단순한 형식의 어셈블리인 단일 파일 어셈블리에는 형식 정보 및 구현과 어셈블리 매니페스트가 포함되어 있습니다. 명령줄 컴파일러 또는 Visual Studio를 사용하여 .NET Framework를 대상으로 하는 단일 파일 어셈블리를 만들 수 있습니다. 기본적으로 컴파일러는 확장명이 .exe인 어셈블리 파일을 만듭니다.

참고 항목

C# 및 Visual Basic용 Visual Studio는 단일 파일 어셈블리를 만드는 경우에만 사용할 수 있습니다. 다중 파일 어셈블리를 만들려면 명령줄 컴파일러나 Visual C++를 사용해야 합니다.

다음 절차에는 명령줄 컴파일러를 사용하여 단일 파일 어셈블리를 만드는 방법을 보여 줍니다.

확장명이 .exe인 어셈블리 만들기

명령 프롬프트에서 다음 명령을 입력합니다.

<compiler command><module name>

이 명령에서 compiler command는 코드 모듈에서 사용되는 언어에 대한 컴파일러 명령이고, module name은 어셈블리로 컴파일할 코드 모듈의 이름입니다.

다음 예제는 myCode라는 코드 모듈에서 myCode.exe라는 어셈블리를 만듭니다.

csc myCode.cs
vbc myCode.vb

확장명이 .exe인 어셈블리를 만들고 출력 파일 이름을 지정

명령 프롬프트에서 다음 명령을 입력합니다.

<compiler command>/out:<file name><module name>

이 명령에서 compiler command는 코드 모듈에서 사용되는 언어에 대한 컴파일러 명령이고, file name은 출력 파일 이름이고, module name은 어셈블리로 컴파일할 코드 모듈의 이름입니다.

다음 예제는 myCode라는 코드 모듈에서 myAssembly.exe라는 어셈블리를 만듭니다.

csc -out:myAssembly.exe myCode.cs
vbc -out:myAssembly.exe myCode.vb

라이브러리 어셈블리 만들기

라이브러리 어셈블리는 클래스 라이브러리와 비슷합니다. 다른 어셈블리에서 참조되는 형식을 포함하지만 실행을 시작할 진입점이 없습니다.

라이브러리 어셈블리를 만들려면 명령 프롬프트에서 다음 명령을 입력합니다.

<compiler command>-t:library<module name>

이 명령에서 compiler command는 코드 모듈에서 사용되는 언어에 대한 컴파일러 명령이고, module name은 어셈블리로 컴파일할 코드 모듈의 이름입니다. -out: 옵션 등의 다른 컴파일러 옵션을 사용할 수도 있습니다.

다음 예제는 myCode라는 코드 모듈에서 myCodeAssembly.dll이라는 라이브러리 어셈블리를 만듭니다.

csc -out:myCodeLibrary.dll -t:library myCode.cs
vbc -out:myCodeLibrary.dll -t:library myCode.vb

참고 항목