您的位置:首页 > 其它

【开发工具】dll程序集合并工具之ILMerge

2017-04-18 21:37 232 查看
开发项目的过程中,难免会引用一些外部的DLL,这样在部署到应用环境时、不是那么方便。微软官方提供了一个工具:ILMerge。

一、用处:

将多个.Net的程序集合并成一个单一的程序集(DLL或者exe)

二、使用:

2.1、ILMerge虽然被打包成控制台应用程序,但是它的所有功能都是可以进行编程的。

关键API介绍:

public void SetInputAssemblies(string[] assems);

设置输入的程序集,每一项为程序集包含文件绝对路径的全名,其中参数第一个程序集为主程序集。

public string OutputFile { get; set; } 

获取或设置合并后生成的文件名。

public void SetTargetPlatform(string platform, string dir);

设置.net framework目标平台,platform参数支持的:“v1”, “v1.1”, “v2”, “v4”,第二个参数为mscorlib.dll目录(可为空)

public ILMerge.Kind TargetKind { get; set; }

获取或设置目标平台类型(Windows应用程序、DOS应用程序、DLL)

public enum Kind

        {

            Dll = 0,

            Exe = 1,

            WinExe = 2,

            SameAsPrimaryAssembly = 3,

        }

设置为SameAsPrimaryAssembly时,表示与输入文件的主程序集相同。

注意:

①v1、v1.1、v2、v4指的是CLR(公共语言运行时),其中v2对应.net 2.0、.net 3.0和.net 3.5,而 v4则对应 .net
4.0及以上版本。

②参考文章地址(含GUI工具、源码):
http://www.szeju.com/index.php/other/0972424.html
2.2、官方原生的控制台程序

其实,命令行的操作也并不复杂,想要使用的可以参考:http://jingyan.baidu.com/article/49ad8bce6aa2295834d8fa97.html

3、环境:

ILMerge运行在CLR 2.0及以上的系统中,但是也能合并CLR v1或者CLR v1.1 的程序集。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息