dll合并,exe合并。ILMerge的使用详解,VS项目开发

ILMerge的使用

  • demo地址
  • 背景
  • 创建项目
  • NuGet添加ILMerge引用

demo地址

https://gitee.com/chenheze90/l09_lilmerge

背景

ILMerge是一个微软提供的工具。主要用途是将dll或者exe合并在一起。打包成一个程序集可以避免发布或者部署程序的时候触发依赖而导致的问题。

创建项目

我们以一个wpfapp为例
dll合并,exe合并。ILMerge的使用详解,VS项目开发_第1张图片
再创建一个类库,用于合并
dll合并,exe合并。ILMerge的使用详解,VS项目开发_第2张图片
类库实现一个加法功能

dll合并,exe合并。ILMerge的使用详解,VS项目开发_第3张图片
主界面调用类库的加法

dll合并,exe合并。ILMerge的使用详解,VS项目开发_第4张图片
首先要添加引用

dll合并,exe合并。ILMerge的使用详解,VS项目开发_第5张图片

dll合并,exe合并。ILMerge的使用详解,VS项目开发_第6张图片
完成之后执行代码,结果如图
dll合并,exe合并。ILMerge的使用详解,VS项目开发_第7张图片
查看debug下的文件,主程序exe和类库dll都在
dll合并,exe合并。ILMerge的使用详解,VS项目开发_第8张图片

NuGet添加ILMerge引用

右键点击项目,选择管理Nuget程序包,查找并下载ILMerge

dll合并,exe合并。ILMerge的使用详解,VS项目开发_第9张图片
将项目改为release,这样不生成pdb文件
dll合并,exe合并。ILMerge的使用详解,VS项目开发_第10张图片
点击下面的“高级”按钮,将调试信息改为无
dll合并,exe合并。ILMerge的使用详解,VS项目开发_第11张图片

编辑主项目的项目文件
dll合并,exe合并。ILMerge的使用详解,VS项目开发_第12张图片
在最后加上下面这两句
dll合并,exe合并。ILMerge的使用详解,VS项目开发_第13张图片


	




	
		<_ProjectDependencyFile Include="bin\Release\Bll.dll" />
	
	

1./out:之后的,就是要合并的程序,第一个是合并的dll/exe,后面是被合并的dll。
2.第二个Target是为了保证生成的时候去执行第一个ILMerge的Target指令。

修改如下
dll合并,exe合并。ILMerge的使用详解,VS项目开发_第14张图片
先删除release下的所有文件,点击生成

dll合并,exe合并。ILMerge的使用详解,VS项目开发_第15张图片
如此,合并dll的工作就完成了。我们点击运行试试看
dll合并,exe合并。ILMerge的使用详解,VS项目开发_第16张图片

你可能感兴趣的:(c#,.net,学习)