我可以只导入一个类的dll吗?

时间:2014-03-17 16:57:48

标签: vb.net class dll import reference

美好的一天,

我使用了dll导入" user32.dll"在过去。 但是,我试图将一个类库导入到我的应用程序中,该应用程序有一些名称空间与已经从其他类库导入和引用的名称空间冲突。

如何引用此dll并仅使用其中包含的命名空间,或覆盖从一个类中的其他类库导入的其他命名空间,而不会影响应用程序的其余部分。

我还很新,这可能是不可能的。

谢谢。

1 个答案:

答案 0 :(得分:0)

总结相关问题:

VB.NET中,可以使用Declare语句在具有典型EntryPoint构造的DLL中调用win32函数。

.NET程序集不提供经典的Win32类型EntryPoints(因此它们不能被声明')

如果需要引用.NET程序集[或COM],则需要在编译时添加对目标库的引用(通常在VS IDE中或使用/r:开关完成)

在某些情况下,此类引用的程序集的命名空间可能会与其他程序集发生冲突。 (即在不同版本中引用相同的大会)

在这种情况下,需要使用Alias

导入所需的(冲突的)命名空间

例如:

假设您的程序集具有可能与Net发生碰撞的根名称空间System.Net

Imports System
Imports ExtNet = SomeNetworkAssembly

然后在这种情况下访问该程序集的成员使用ExtNet而不是Net

请注意,您可以根据需要命名ExtNet部分。

在C#中,可以通过using关键字来实现。