-addmodule

使编译器能够将指定文件中的所有类型信息提供给当前正在编译的项目。

语法

-addmodule:fileList  

论据

fileList
必填。 包含元数据但不包含程序集清单的文件的逗号分隔列表。 包含空格的文件名应用引号(“ ) 括起来。

注解

参数列出的 fileList 文件必须使用选项创建 -target:module ,或者创建另一个编译器等效 -target:module的文件。

添加 -addmodule 的所有模块必须在运行时与输出文件位于同一目录中。 也就是说,可以在编译时在任何目录中指定模块,但该模块必须在运行时位于应用程序目录中。 如果不是,则会出现错误 TypeLoadException

如果指定(隐式或显式)非任何目标(Visual Basic)选项-target:module-addmodule,则传递到-addmodule的文件将成为项目的程序集的一部分。 运行包含一个或多个添加文件的 -addmodule输出文件需要程序集。

使用 -reference (Visual Basic) 从包含程序集的文件导入元数据。

注释

此选项 -addmodule 在 Visual Studio 开发环境中不可用;仅在从命令行编译时才可用。

示例:

以下代码创建一个模块。

' 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

另请参阅