简体   繁体   English

从另一个项目进行引用时,并非库的所有引用DLL都在本地复制

[英]Not all of a library's refrenced DLLs are copied local when refrencing from another project

I am trying to work with the LEADTOOLS imaging library, they have a large set of dll's that need to be referenced. 我正在尝试使用LEADTOOLS影像库,它们具有大量需要参考的dll。 The way our design is set up we have a core library that all of our projects are based off of, all of the DLL's that LEADTOOLS needs are loaded to our base library, and they get copied local to it's build path, but when we use our sub projects only some of the DLL's are copied locally (LeadTools.Codecs.dll and LeadTools.dll to be specific). 设计的设置方式有一个核心库,所有项目均基于该库,LEADTOOLS所需的所有DLL都加载到我们的基础库中,并将它们本地复制到其构建路径中,但是当我们使用时我们的子项目只有一部分DLL被本地复制(具体来说是LeadTools.Codecs.dll和LeadTools.dll)。

There is no difference in settings between the two dll's that are comming over and the 45 that are not. 即将来临的两个dll与未出现的45个dll之间的设置没有区别。 What do I need to do to make those codec dll's come over to be copied locally? 我需要怎么做才能使那些编解码器dll过来复制到本地?

Top half of reference list 参考清单的上半部分

在此处输入图片说明

Bottom of reference list and 2nd project 参考清单底部和第二个项目

在此处输入图片说明

output directory for core 核心的输出目录

在此处输入图片说明

output directory for 2nd project 第二项目的输出目录

在此处输入图片说明

This is the ItemGroup section from the csproj file. 这是csproj文件中的ItemGroup部分。

  <ItemGroup>
    <Reference Include="Leadtools, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Abc">
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Abc.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Ani">
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Ani.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Bmp">
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Bmp.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Cal">
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Cal.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Clp">
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Clp.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Cmp">
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Cmp.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Cmw">
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Cmw.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Eps, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Eps.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Fax, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Fax.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Flc, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Flc.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Gif, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Gif.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Hdp, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Hdp.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Ica, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Ica.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Iff, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Iff.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Img, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Img.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Itg, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Itg.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.J2k, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.J2k.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Jb2, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Jb2.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Jbg, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Jbg.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Lma, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Lma.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Lmb, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Lmb.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Mac, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Mac.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Mng, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Mng.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Msp, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Msp.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Pcx, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Pcx.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Png, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Png.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Pnm, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Pnm.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Psd, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Psd.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Ptk, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Ptk.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Ras, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Ras.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Rtf, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Rtf.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Sgi, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Sgi.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Smp, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Smp.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Tfx, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Tfx.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Tga, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Tga.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Tif, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Tif.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Wfx, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Wfx.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Wmf, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Wmf.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Wpg, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Wpg.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Xbm, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Xbm.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Xpm, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Xpm.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.xps, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.xps.dll</HintPath>
    </Reference>
    <Reference Include="Leadtools.Codecs.Xwd, Version=16.5.0.0, Culture=neutral, PublicKeyToken=9cf889f53ea9b907, processorArchitecture=AMD64">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\LEAD Technologies\LEADTOOLS Imaging 16.5\Redist\DotNet\x64\Leadtools.Codecs.Xwd.dll</HintPath>
    </Reference>
    <Reference Include="Microsoft.Office.Interop.Excel, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c, processorArchitecture=MSIL">
      <EmbedInteropTypes>True</EmbedInteropTypes>
      <HintPath>C:\Program Files\Microsoft Visual Studio 10.0\Visual Studio Tools for Office\PIA\Office14\Microsoft.Office.Interop.Excel.dll</HintPath>
    </Reference>
    <Reference Include="MySql.Data, Version=6.3.6.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL" />
    <Reference Include="System" />
    <Reference Include="System.Core" />
    <Reference Include="System.Drawing" />
    <Reference Include="System.Windows.Forms" />
    <Reference Include="System.Xml.Linq" />
    <Reference Include="System.Data.DataSetExtensions" />
    <Reference Include="Microsoft.CSharp" />
    <Reference Include="System.Data" />
    <Reference Include="System.Xml" />
  </ItemGroup>

Visual Studio has a quirk whereby it doesn't copy dlls to the bin folder if they exist in the GAC. Visual Studio有一个怪癖,即如果GAC中存在dll,它不会将dll复制到bin文件夹。 This is true even if you set the assembly to copy local. 即使将程序集设置为本地复制,也是如此。

To get around it (assuming this it what you are experiencing), you'll need to create a custom build action to copy them over. 为了解决这个问题(假设它是您正在经历的事情),您将需要创建一个自定义生成操作来将它们复制过来。 Alternatively build the project on a server where dlls do not exist in the GAC. 或者,在GAC中不存在dll的服务器上构建项目。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM