将多个本机DLL合并到一个DLL中

时间:2020-03-06 14:50:32  来源:igfitidea点击:

我有很多小的DLL,我想做成一个更大的DLL(如这里的建议)。我可以通过合并我的项目来做到这一点,但我希望采用一种不太干扰的方式。

可以将几个DLL合并为一个单元吗?

快速搜索发现该线程声称这是不可能的。有人知道吗?

请注意,我说的是本机C ++代码而不是.NET,所以ILMerge出局了。

解决方案

我不知道有关合并dll的信息,但是我敢肯定我们可以将中间目标文件链接到一个dll中。这仅需要更改构建脚本。

据我所知,我们不能直接合并DLL文件。但是静态库或者目标文件应该是可能的。如果我们可以构建项目的静态库,则可以使用"库管理器"合并它们,方法是从所有库中提取目标文件并将它们打包到新库中。

另外,有一种产品可以从.DLL中制作出.LIB。然后,我们可以将exe与该.LIB链接,并完全摆脱.DLL。也许我们可以从不确定的.LIB中链接一个.DLL。

产品在这里:
http://www.binary-soft.com/dll2lib/dll2lib.htm
我不确定它是否可以运行,是否受支持甚至出售。它看起来确实很昂贵,但是它曾经有(启用了nag的)免费试用期。