/addmodule(C# 컴파일러 옵션)
이 옵션은 target:module 스위치를 사용하여 만든 모듈을 현재 컴파일에 추가합니다.
/addmodule:file[;file2]
인수
- file, file2
메타데이터를 포함하는 출력 파일입니다.이 파일은 어셈블리 매니페스트를 포함할 수 없습니다.둘 이상의 파일을 가져오려면 파일 이름을 쉼표 또는 세미콜론으로 구분합니다.
설명
/addmodule로 추가한 모든 모듈은 런타임에 출력 파일과 동일한 디렉터리에 있어야 합니다.즉, 컴파일 타임에는 모든 디렉터리에 모듈을 지정할 수 있지만 런타임에는 모듈이 응용 프로그램 디렉터리에 있어야 합니다.런타임에 모듈이 응용 프로그램 디렉터리에 없으면 TypeLoadException이 발생합니다.
file은 어셈블리를 포함할 수 없습니다.예를 들어, 출력 파일을 /target:module로 만든 경우 /addmodule을 사용하여 해당 파일의 메타데이터를 가져올 수 있습니다.
출력 파일을 /target:module 대신 /target 옵션으로 만든 경우 해당 파일의 메타데이터는 /addmodule을 사용하여 가져올 수 없지만 /reference를 사용하여 가져올 수는 있습니다.
이 컴파일러 옵션은 Visual Studio에서 사용할 수 없습니다. 프로젝트는 모듈을 참조할 수 없습니다.또한, 이 컴파일러 옵션은 프로그래밍 방식으로 변경할 수 없습니다.
예제
소스 파일 input.cs를 컴파일하고 metad1.netmodule과 metad2.netmodule의 메타데이터를 추가하여 out.exe를 생성합니다.
csc /addmodule:metad1.netmodule;metad2.netmodule /out:out.exe input.cs