使编译器能够将指定文件中的所有类型信息提供给当前正在编译的项目。
语法
-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
。