winform打包dll到exe文件中

nuget

Nuget是一个.NET平台下的开源的项目,它是Visual Studio的扩展。在使用Visual Studio开发基于.NET Framework的应用时,Nuget能把在项目中添加、移除和更新引用的工作变得更加快捷方便。

Costura.Fody

Constura.Fody 是一个开源的资源管理工具,可以将我们所有的依赖像资源一样打包。

github地址为:https://github.com/Fody/Costura

nuget安装constura方法 命令行

Install-Package Costura.Fody -Version 4.1.0

visual studion 工具->Nuget包管理器->管理Nuget程序包->在nuget市场搜索 constura安装

工作原理

  • 将所有的程序集标记为可拷贝,然后把他们当作资源引入
  • 在目标模块初始化程序集的时候,注入代码引入资源
  • Common.ReadExistingAssembly 和Common.ReadFromEmbeddedResources方法读取程序集