如何指定MSbuild输出文件夹?

Pav*_*van 23 delphi msbuild delphi-2009

当我使用MSBuild命令行执行delphi 2009项目时,输出总是转到C:驱动器

C:\MyProjects>MSbuild "C:\MyTestProject\Test.dproj" /t:Build /p:OutDir="C:\Output\bin\"
Run Code Online (Sandbox Code Playgroud)

为什么会这样?

谢谢和问候,帕万.

JP *_*oto 26

我知道文档说不然,但尝试OutputPath而不是OutDir.

  • 最好使用`DCC_ExeOutput`而不是`OutputPath`,因为当你有`PostBuildEvents`而你正在使用`$(OutputPath)`时,那么`/ p:OutputPath ="xxx"`将*不*用于` $(OutputPath)`,但如果使用`/ p:DCC_ExeOutput ="xxx"`那么它将正常工作. (5认同)
  • 是的,应该使用OutputPath而不是OutDir,在这种情况下,文档是错误的. (2认同)
  • 我发现这非常有趣:http://www.pseale.com/i-hate-you-outdir-parameter它显示了许多可能出现OutDir错误的事情. (2认同)

Lar*_*ens 6

对于Delphi项目,您需要使用DCC_ExeOutput来指定EXE应该去的地方。

C:\MyProjects>MSbuild "C:\MyTestProject\Test.dproj" /t:Build /p:DCC_ExeOutput="C:\Output\bin\"
Run Code Online (Sandbox Code Playgroud)

在Test.dproj内查看您可能要指定的任何其他选项。