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

独自空忆成欢 提交于 2019-12-08 10:49:23

问题


I am trying to work with the LEADTOOLS imaging library, they have a large set of dll's that need to be referenced. 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).

There is no difference in settings between the two dll's that are comming over and the 45 that are not. What do I need to do to make those codec dll's come over to be copied locally?

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.

  <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>

回答1:


Visual Studio has a quirk whereby it doesn't copy dlls to the bin folder if they exist in the GAC. 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.



来源:https://stackoverflow.com/questions/7433764/not-all-of-a-librarys-refrenced-dlls-are-copied-local-when-refrencing-from-anot

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!