2

我有一个使用一些第三方 dll 的 dll 项目。我希望编译结果只是一个包含所有第三方 dll 的大 dll。如何在 Visual Studio 2010 中执行此操作?

4

3 回答 3

3

您需要使用 ILMerge,假设 DLL 都是托管的:

http://www.microsoft.com/en-us/download/details.aspx?id=17630

以及一些相关的问题:

ILMerge 最佳实践

ILMerge 问题

于 2012-07-10T14:43:58.830 回答
0

ILMerge 是仅限 .NET 的解决方案(不适用于非托管 dll)

一个不错的工具是 NETZ(.net 可执行压缩器和打包器),它将所有依赖项压缩到单个 exe / dll 文件中。

我最近没有使用它,所以我不知道它是否与 .NET 4.0 兼容而且它有一段时间没有得到很多更新,但我会试一试。

http://madebits.com/netz/

于 2012-07-10T14:51:04.280 回答
-1

您可以在此处采用多种方法来实现此目的。这里有一对:

  1. 如果在一个项目中可用,您可以包含源代码,然后将其编译为单个二进制文件。

  2. 您可以将外部程序集添加为资源,并在运行时动态加载它们。

  3. 您可以使用 Eazfuscator.Net 之类的东西,它使用 ILMerge 在编译时合并程序集。(也可以直接使用 ILMerge,但 Eazfuscator 有很好的包装功能)Eazfuscator .Net

于 2012-07-10T14:44:52.857 回答