C# 把多个dll合成一个dll

  1. Nuget 下载ILMergeC# 把多个dll合成一个dll_第1张图片
  2. 两个工程
    dog为测试工程
    TestIlmerge为准备合并的类库
    C# 把多个dll合成一个dll_第2张图片
  3. 如下图所示,
    由于我们引用下面4个库
    正常生成后,会有TestIlmerge.dll和下面的这4个dll
    C# 把多个dll合成一个dll_第3张图片
  4. 只生成TestIlmerge.dll
    打开工程文件
    C# 把多个dll合成一个dll_第4张图片
    在最下方加入以下两段
  <Target Name="ILMerge">
    <Exec Command="$(ILMergeConsolePath) bin\Debug\TestIlmerge.dll /out:bin\Debug\TestIlmerge.dll bin\Debug\Newtonsoft.Json.dll bin\Debug\Emgu.CV.World.dll bin\Debug\Emgu.CV.UI.dll bin\Debug\ZedGraph.dll" />
  </Target>
  <Target Name="_ProjectRemoveDependencyFiles" AfterTargets="AfterBuild" DependsOnTargets="ILMerge">
    <ItemGroup>
      <_ProjectDependencyFile Include="bin\Debug\Newtonsoft.Json.dll" />
      <_ProjectDependencyFile Include="bin\Debug\Emgu.CV.World.dll" />
      <_ProjectDependencyFile Include="bin\Debug\Emgu.CV.UI.dll" />
      <_ProjectDependencyFile Include="bin\Debug\ZedGraph.dll" />
    </ItemGroup>
    <Delete Files="@(_ProjectDependencyFile)" />
  </Target>
  1. 点击生成即可

你可能感兴趣的:(c#,开发语言)