【发布时间】:2013-04-10 06:23:03
【问题描述】:
我在 Visual Studio 中使用 C# 创建了一个dll。它的依赖项中有六个.lib 文件。
通过阅读此处的其他一些问题,我了解到.lib 文件是在运行时链接的,这让我认为这些文件不包含在我制作的.dll 文件中。
那么,我该如何分发dll 文件呢?我是否必须将.lib 文件与.dll 文件一起发送,或者有什么方法可以静态编译它,以便所有内容都包含在.dll 文件中?
【问题讨论】:
-
.NET 没有链接阶段。您如何使用
.lib文件? -
@MD.Unicorn 非常准确地说,C# 项目引用了一个 C++ 项目,该项目又依赖于这六个库(通过
Additional Dependencies选项)。 -
C++ 项目的输出将包含嵌入其中的六个库的代码。因为 .lib 文件是静态链接的。该 C++ 项目的输出是什么?那是一个 C++/CLI 项目吗?
-
它是一个非托管 C++ 项目,也输出一个
.dll文件。 -
我认为您不需要包含这些库。只需 C++ dll 就足够了。尝试在不包含 lib 文件的情况下运行最终输出,看看是否有任何错误。您还需要包含该 C++ dll 文件。
标签: c# visual-studio-2010 dll linker