Единственный способ, которым я придумал, чтобы сделать эту работу:
- Установите для параметра "Копировать локально" значение false для рассматриваемой ссылки (ей)
- Отдельно добавить указанные файлы сборок в проект в качестве содержимого (см. Ниже)
- Большой недостаток: если какая-либо ссылочная сборка имеет свои собственные ссылки, их (и их собственные ссылки и т. Д.) Необходимо будет добавить в качестве содержимого таким же образом. И если какой-либо из списков ссылок этих сборок изменится, вам необходимо обновить ваш проект.
В .vcxproj:
<ItemGroup> <!-- you probably already have an ItemGroup you can use -->
<Content Include='subdir\referenced.dll'>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
Обратите внимание, что если вам нужно, чтобы структура каталогов в выходных данных отличалась от исходной, вам нужно немного подкорректировать, как описано в этот ответ :
<ContentWithTargetPath Include="source_dir\referenced.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<TargetPath>dest_dir\referenced.dll</TargetPath>
</ContentWithTargetPath>