C#程序将DLL包进EXE方法

有时候我们在发布程序的时候只想发布一个EXE,而编写程序的时候往往会有多个DLL,这个时候如果能把这些DLL装进EXE将是一个很令人振奋的事情,事实上对于C#程序有很多方法如下:

1. 使用微软的ILMerge(缺点:不支持WPF程序);

2. 将DLL添加到EXE的资源(http://blogs.msdn.com/b/microsoft_press/archive/2010/02/03/jeffrey-richter-excerpt-2-from-clr-via-c-third-edition.aspx);

3. 使用开源工具Fody/Costura(GitHub主页),其原理同方法2;

3.1 从NuGet安装Costura.Fody(NuGet安装方法:http://docs.nuget.org/docs/start-here/installing-nuget,然后在VS的工具菜单就可以看到NuGet程序包管理器,打开其控制台,然后输入命令如下:

PM>Install-Package Fody -Version 1.24

PM> Install-Package Costura.Fody

3.2 如果你不知道命令怎么用,也可以用图形界面,直接搜Costura即可,可以指定安装到那个工程。

4.  DotNetReactor 官方主页

5. 使用其他工具;

参考资料

Add a Comment

电子邮件地址不会被公开。 必填项已用*标注

3 + 6 =