-addmodule

컴파일러에서 지정된 파일의 모든 형식 정보를 현재 컴파일하고 있는 프로젝트에 사용할 수 있도록 합니다.

구문

-addmodule:fileList  

인수

fileList
필수입니다. 메타데이터를 포함하지만 어셈블리 매니페스트를 포함하지 않는 파일의 쉼표로 구분된 목록입니다. 공백이 포함된 파일 이름은 따옴표("")로 묶어야 합니다.

설명

fileList 매개 변수로 나열되는 파일은 -target:module 옵션 또는 다른 컴파일러의 -target:module와 동등한 옵션을 사용하여 만들어야 합니다.

-addmodule을 사용하여 추가된 모든 모듈은 런타임에 출력 파일과 동일한 디렉터리에 있어야 합니다. 즉, 컴파일 시간에 임의 디렉터리에 있는 모듈을 지정할 수 있지만 런타임에 모듈이 애플리케이션 디렉터리에 있어야 합니다. 그렇지 않으면 TypeLoadException 오류가 발생합니다.

-addmodule과 함께 -target:module이 아닌 -target(Visual Basic) 옵션을 암시적 또는 명시적으로 지정하는 경우 -addmodule에 전달하는 파일이 프로젝트 어셈블리의 일부가 됩니다. -addmodule을 사용하여 추가된 파일이 하나 이상 있는 출력 파일을 실행하려면 어셈블리가 필요합니다.

-reference (Visual Basic)를 사용하여 어셈블리를 포함하는 파일에서 메타데이터를 가져옵니다.

참고 항목

Visual Studio 개발 환경 내에서는 -addmodule 옵션을 사용할 수 없습니다. 명령줄에서 컴파일하는 경우에만 사용할 수 있습니다.

예시

다음 코드에서는 모듈을 만듭니다.

' t1.vb
' Compile with vbc /target:module t1.vb.
' Outputs t1.netmodule.

Public Class TestClass
    Public i As Integer
End Class

다음 코드에서는 모듈의 형식을 가져옵니다.

' t2.vb
' Compile with vbc /addmodule:t1.netmodule t2.vb.
Option Strict Off

Namespace NetmoduleTest
    Module Module1
        Sub Main()
            Dim x As TestClass
            x = New TestClass
            x.i = 802
            System.Console.WriteLine(x.i)
        End Sub
    End Module
End Namespace

t1을 실행하면 802를 출력합니다.

참고 항목