创建一个引用另一个.dll的.dll

时间:2012-05-08 14:51:13

标签: .net dll vb6

我在.Net中为同事创建了一个.dll,以包含在他的VB6项目中。经过大量的讨论,我们终于从VB6项目中引用了.dll,并且能够创建对象的实例。

事情是我的.dll引用另一个.dll(第三方)。我知道在生成.exe文件时,您可以选择include引用的.dll而不是将其作为先决条件。但是,在创建.dll文件时,无法使用相同的功能。

在他的VB6中,它提到第三方.dll无法访问。

如何在我的.dll中加入第三方.dll?或者,对于我的同事来说,引用第三方也是明智的。还有我的吗?

提前致谢。

2 个答案:

答案 0 :(得分:3)

您不能(可靠地)将引用的DLL嵌入另一个DLL中。它们都需要被复制到具有先决条件的目标机器以及作者推荐的注册/设置。

答案 1 :(得分:1)

为了从VB6引用.NET DLL,您需要从相应的.NET Framework版本运行“regasm”命令。您还希望使用“/ tlb”开关让它输出类型库(.tlb文件)。

获得tlb文件后,只需从VB6 IDE中选择Project-> References,然后单击browse选择tlb。您现在可以在.NET库中使用类的早期绑定实例化。

由于您的.NET DLL使用另一个DLL,您只需确保引用您的.NET DLL的EXE可以访问它。这是通过将第三方DLL部署到EXE启动的相同路径来完成的,或者如果第三方DLL也是.NET并且也是强名称,则还可以将第三方DLL添加到全局程序集缓存(GAC)。