导航

1、使用环境

  系统:WIN10 LTSC1809

  VS版本:2012(已升级到最新版)

2、如何合并?

   过程简介:在VS2012中通过NuGet安装ILmerge和MSBuild.ILMerge.Task,在程序编译时,经过这两个插件直接自动将exe和dll打包成一个exe放置在debug或release文件夹中,或者将dll合成一个dll。

   首先,我们需要当前VS所适配的最新的NuGet,这一点可以在Nuget官网下载相应版本或者将VS更新到最新版。

   若NuGet无法连接可参考以下教程解决(仅针对VS2010、2011、2012、2013)

   NuGet无法连接的解决方法 

   

   可以连接之后,我们就需要安装ILmerge和MSBuild.ILMerge.Task,可以通过程序包管理器控制台安装,也可以通过右键引用中管理NuGet程序包来安装,不知道为什么后者在我这不太稳定,所以我先介绍控制台的,再介绍另一种。

   首先打开控制台     

   进入控制台:

   

 

   在PM>后输入相应的命令安装ILMerge:

Install-Package ilmerge -Version 3.0.41

   

 

    

 

 

   安装MSBuild.ILMerge.Task:

Install-Package MSBuild.ILMerge.Task -Version 1.1.3

   过程同上。

   

 

    安装完成之后,会在右侧项目栏中看到多出几个文件

   

   以上类似命令都可以在以下网站找到:   

    MSBuild.ILMerge.Task:https://www.nuget.org/packages/MSBuild.ILMerge.Task/

    ilmerge:https://www.nuget.org/packages/ilmerge

   安装完成之后,再项目右键点击重新生成。

   

 

    在项目下的Debug文件夹下的.exe文件此时就是集成了exe和dll文件的程序。

   这样,每次你编译的程序都是打包后的程序。

 

   接下来,介绍一下另一种操作比较人性化的方法,通过右键引用管理NuGet程序包的方法来添加。

   

 

    进入Nuget程序包搜索界面

   

 

    搜索ILmerge和MSBuild.ILMerge.Task,点击安装即可。

   

 

    后面合成步骤和之前的一样。

   

    参考文章:https://dotblogs.com.tw/lazycodestyle/2016/06/05/144531

   

   PS:其实这两插件安装之后可以不用重复下载,可以本地安装

   如何安装请参考教程:https://www.cnblogs.com/egger/archive/2013/03/19/2970138.html