C# 将exe从一个项目复制到另一个项目';调试输出目录

C# 将exe从一个项目复制到另一个项目';调试输出目录,c#,visual-studio-2010,exe,C#,Visual Studio 2010,Exe,我有两个项目,ProjOne.exe和ProjTwo.exe。我想构建ProjOne.exe,它知道它依赖于ProjTwo.exe,因此它在构建ProjOne.exe时会复制ProjTwo.exe 我还有一个ProjThree.dll,它已经完美地实现了这一点。但这仅仅是因为dll被ProjOne引用 有什么方法可以像处理DLL/OCX一样做到这一点?或者这将是一些构建后脚本编写吗?:)如果是这样,请给出我将使用的脚本示例 谢谢 转到项目项目两个属性->生成事件-->生成后事件命令行: echo

我有两个项目,ProjOne.exe和ProjTwo.exe。我想构建ProjOne.exe,它知道它依赖于ProjTwo.exe,因此它在构建ProjOne.exe时会复制ProjTwo.exe

我还有一个ProjThree.dll,它已经完美地实现了这一点。但这仅仅是因为dll被ProjOne引用

有什么方法可以像处理DLL/OCX一样做到这一点?或者这将是一些构建后脚本编写吗?:)如果是这样,请给出我将使用的脚本示例


谢谢

转到项目项目两个属性->生成事件-->生成后事件命令行

echo f | xcopy /y "$(TargetPath)" "$(SolutionDir)ProjOne\bin\Debug$(TargetFileName)"

当您构建ProjTwo时,它会将ProjTwo.exe复制到ProjOne的Debug文件夹中

我最终使用了ganchito55的方法,效果非常好。然后我很快意识到,在处理多个文件(如调试文件等)时,它不适合我的目的。我还想说明在
DEBUG
RELEASE
中的构建

我最后做了以下几件事

1) 深入挖掘项目两上的项目属性: 右键单击项目->属性->生成事件

2) 将以下行添加到“生成后事件命令行”框中: 在生成
DEBUG
output时,将ProjTwo中使用的所有文件复制到ProjOne输出目录

if $(ConfigurationName) == Debug xcopy /y "$(TargetDir)*.*" "$(SolutionDir)ProjOne\bin\Debug\"
if $(ConfigurationName) == Release xcopy /y "$(TargetDir)*.*" "$(SolutionDir)ProjOne\bin\Release\"
在生成
RELEASE
output时,将ProjTwo中使用的所有文件复制到ProjOne输出目录

if $(ConfigurationName) == Debug xcopy /y "$(TargetDir)*.*" "$(SolutionDir)ProjOne\bin\Debug\"
if $(ConfigurationName) == Release xcopy /y "$(TargetDir)*.*" "$(SolutionDir)ProjOne\bin\Release\"

您不能将两个项目都包含在一个解决方案中,然后适当地设置“解决方案输出路径”属性吗?它们位于同一个解决方案中。我从未想过将输出路径直接设置为ProjOne调试目录。我想那可能会在某种程度上咬到我。。。ProjTwo也被几个不同的项目在不同的解决方案中使用虽然这将是一个快速而肮脏的解决方案,但它不会满足我的要求。我认为这是我必须要做的,并且没有内置的东西来自动完成这项任务。谢谢@ArvoBowen感谢您的编辑,我有西班牙语版的VS,所以我尽量将其翻译成英语。np,我还认为我应该补充一点,在大多数情况下,不需要xcopy。由于xcopy上缺少所需的开关(如/I,但用于文件而不是目录),因此可能只需要像这样使用copy命令<代码>复制/Y“$(TargetPath)”“$(SolutionDir)ProjOne\bin\Debug$(TargetFileName)”