如何设置vc ++项目的输出路径与其依赖项(nuget)不同?

roa*_*alz 5 warnings visual-c++-2015

前提
我有一个包含不同VC++项目的Visual Studio 2015解决方案.
其中一些(EXE和一些DLL)将$ OutDir设置为默认值"$(SolutionDir)$(Configuration)\"(即"C:\ MySolution\Debug \").
对于其他一些项目(DLL),我需要将输出路径更改为"默认"$ OutDir的子目录(即"C:\ MySolution\Debug\Pieces \".

示例目录树:

  C:\MySolution\Debug\  
    MyProgram.exe  
    Dependency.dll  
    .\Pieces\  
      MyPiece1.dll  
      MyPiece2.dll  

约束
"Pieces"DLL取决于第三方Dependency.dll(通过NuGet包),我无法修改.

常用解决方案
通常的方法是更改​​"件"项目的$ OutDir项目设置,但这也会强制它们的依赖项在同一个子目录中输出.
这不是必需的,也会在调试和打包整个解决方案时产生问题.

到目前为止,
我尝试过:1.保持$ OutDir对所有项目都一样
2.将"pieces"$ TargetName更改为"Pieces\$(ProjectName)"
这似乎有效(两者都是MyPiece*.dlland依赖项. dll被正确放置并且调试很好),但不幸的是Visual Studio会生成以下警告:

警告MSB8012:TargetName(Pieces\MyPiece1.dll)与链接器的OutputFile属性值(MyPiece1)不匹配.这可能会导致您的项目错误地构建.要更正此问题,请确保$(OutDir),$(TargetName)和$(TargetExt)属性值与%(Link.OutputFile)中指定的值匹配.

这个警告有些令人困惑,因为项目设置中的%Link.OutputFile看起来是正确的:
$(OutDir)$(TargetName)$(TargetExt)=> C:\ MySolution\Debug\Pieces\MyPiece1.dll

问题
解决问题的正确方法是什么?
如何强制Visual Studio在不同的路径中输出一些生成的文件,但仍然在"默认"$ OutDir中具有Nuget依赖项?

我已经搜索过网络和StackOverflow,但我找不到合适的答案.
注意:我的问题与升级VS2010之前的解决方案无关(如Microsoft官方提示解决方案升级后警告MSB8012在StackOverflow上询问).