我有一个C#项目(例如Project.exe),它依赖于a.dll,a.dll依赖于b.dll。
当我构建 Project.exe 时,a.dll 被构建并复制到 Project 的输出文件夹中.exe但 b.dll 不会被复制到输出文件夹中。
构建 Project.exe 时,如何将 a.dll 和 b.dll 复制到 Project.exe 的输出文件夹中?
编辑:我认为重要的是要指出,我想保持Project.exe和b.dll彼此分离。这就是首先拥有.dll的意义所在。
您是否尝试检查 b.dll 的"复制本地"属性?
- 在 Visual Studio 中,单击"解决方案资源管理器"选项卡。
- 在"引用"下找到 b.dll。
- 右键单击并选择属性。
- 确保"复制本地"设置为 True。
看看这是否能解决它。
您可以使用 msbuild copy 命令来实现它。 请右键单击项目节点->卸载项目->右键单击项目->编辑项目.csproj,在csproj文件上添加以下代码。
<Target Name="AfterBuild">
<Copy SourceFiles="$(MSBuildProjectDirectory)..b$(OutputPath)b.dll" DestinationFolder="$(OutputPath)" ContinueOnError="true"/>
</Target>
这是供您参考的示例。https://1drv.ms/u/s!AlvaNEnglADDgQP6j0wRMk5A1DCU