可以将DLL合并到.NET EXE中吗?

goo*_*ate 6 .net c# clr

我有一个DLL存储两个应用程序共有的类.我想将我的应用程序限制在一个EXE文件中,并希望看看我是否能以某种方式将此DLL嵌入到我的主EXE中.

如何将外部DLL嵌入到我的应用程序中?(如果可能的话)

Pau*_*erø 15

http://www.microsoft.com/downloads/en/details.aspx?FamilyID=22914587-b4ad-4eae-87cf-b14ae6a939b0&displaylang=en

ILMerge是一个用于将多个.NET程序集合并到单个.NET程序集中的实用程序.它适用于可执行文件和dll.它提供了几个控制输出处理和格式的选项,有关详细信息,请参阅随附的文档.


Tim*_*oyd 9

ILMerge的替代方法是将依赖程序集作为嵌入式资源嵌入到可执行文件中,并利用程序集解析机制将它们作为资源流加载.可以在此处找到如何执行此操作的示例:

http://blog.magenic.com/blogs/brante/archive/2008/04/14/Embedded-Assembly-Linker.aspx

我自己使用这种模式效果很好.ILMerge有时会出现问题,因此您的milage可能会有所不同.