我如何/在哪里使用.NET DLL发送第三方库?

时间:2009-08-12 17:10:17

标签: c# .net dll packaging

我正在构建一个.NET DLL类库,它依赖于其他库,例如log4net.dll - 在打包我的DLL时,我应该把这些DLL放在哪里?有没有办法自动将它们包含在一个超级DLL中?我应该只将所有DLL发送到一个bin文件夹中吗?

5 个答案:

答案 0 :(得分:7)

只需将它们全部发送到您的dll目录中(假设您正在讨论二进制发行版 - 在源代码发布中我会有一个包含您的依赖项的“lib”目录)。

不要忘记检查是否需要提供许可证,获取来源的指示等。

我不想尝试将您的类库与依赖项合并,个人。

答案 1 :(得分:5)

您需要首先检查附加到其他DLL的EULA和其他许可证。有些人可能会限制他们的DLL库的重新分配方式。假设没有问题,你可以将它们全部编译为一个大的DLL,或者创建一个安装程序(或一个简单的zip文件),将所有相关的DLL安装在它们的预定目的地。

答案 2 :(得分:0)

在您的解决方案树中,为您的所有源代码创建一个名为'src'的文件夹,为log4net,您自己的dll库和任何其他库创建一个名为'lib'的文件夹。

答案 3 :(得分:0)

你应该看看ILMerge。我链接了一个显示ILMerge

用法的博客

Leveraging ILMerge to simplify deployment and your users experience

答案 4 :(得分:0)

不确定如何部署解决方案,但不要忘记,为了签署您的类库,您需要签署第三方.dll。仅此一项可能需要您合并所有参考文献。