将exe从一个项目复制到另一个项目的调试输出目录

Arv*_*wen 7 c# exe visual-studio-2010

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

我还有一个ProjThree.dll,它已经完美地完成了它.但这仅仅是因为Proll引用了dll.

有没有像DLL/OCX那样做的方法?或者这是一些POST构建脚本?:)如果是这样,请举例说明我将使用的脚本.

谢谢!

gan*_*o55 11

转到项目ProjTwo属性 - > 构建事件 - > 构建后事件命令行:

echo f | xcopy /y "$(TargetPath)" "$(SolutionDir)ProjOne\bin\Debug$(TargetFileName)"
Run Code Online (Sandbox Code Playgroud)

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


Arv*_*wen 9

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

我最终做了以下...

1)深入到 ProjTwo 上的项目属性:

右键单击项目->属性->构建事件

2)将以下行添加到“构建后事件命令行”框中:

构建DEBUG输出时,将 ProjTwo 中使用的所有文件复制到 ProjOne 输出目录。

if $(ConfigurationName) == Debug xcopy /y "$(TargetDir)*.*" "$(SolutionDir)ProjOne\bin\Debug\"
Run Code Online (Sandbox Code Playgroud)

构建RELEASE输出时,将 ProjTwo 中使用的所有文件复制到 ProjOne 输出目录。

if $(ConfigurationName) == Release xcopy /y "$(TargetDir)*.*" "$(SolutionDir)ProjOne\bin\Release\"
Run Code Online (Sandbox Code Playgroud)