把C#程序(含多个Dll)合并成一个exe

时间:2015-10-10 15:34:17   收藏:0   阅读:809

Costura.Fody

开发程序的时候经常会引用一些第三方的DLL,然后编译生成的exe文件就不能脱离这些DLL独立运行了。有时候为了发布方便或者安装使用方便,单个的exe文件远比一大堆的dll文件简洁得多。

这里我们需要用到一款名为Fody.Costura的工具。Fody.Costura是一个Fody框架下的插件,可通过Nuget安装到VS工程中。安装之后,就可以将项目所依赖的DLL(甚至PDB)文件全部打包到EXE文件里。

使用方法也很简单:

1.在VS中,通过Nuget为目标EXE工程安装Costura.Fody。

2.重新构建项目。

构建完成后,到项目的输出目录下找到新生成的EXE文件,你同时会发现输出目录下仍然存在那些DLL。不过不用担心,这个EXE已经能够独立运行了。你可以把这些DLL全部删除后再运行EXE试试。

官方文档:https://github.com/Fody/Costura

ILMerge

另外一个工具是就是微软官方出的工具ILMerge,大小只有几百KB,使用命令行进行dll合并,远没有上面的Costura.Fody简便。

官方下载地址:http://www.microsoft.com/en-us/download/details.aspx?id=17630

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!