/addmodule

使编译器将指定文件中的所有类型信息对当前正在编译的项目可用。

/addmodule:fileList

参数

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

备注

fileList 参数所列文件必须用 /target:module 选项创建,或用其他编译器的 /target:module 等效项创建。

运行时,所有用 /addmodule 添加的模块必须与输出文件在同一目录中。 也就是说,编译时可以指定任何目录中的模块,但运行时模块必须在应用程序目录中。 否则,将会显示 TypeLoadException 错误。

如果以 /addmodule(显式或隐式地)指定除 /target:module 以外的其他任何 /target (Visual Basic) 选项,则传递给 /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。

请参见

参考

/target (Visual Basic)

/reference (Visual Basic)

示例编译命令行 (Visual Basic)

其他资源

Visual Basic 命令行编译器