2009-07-05 4 views
21

Когда я исполняю DELPHI проект 2009 с помощью командной строки MSBuild, выход всегда идет в C: дискКак указать папку вывода MSbuild?

C:\MyProjects>MSbuild "C:\MyTestProject\Test.dproj" /t:Build /p:OutDir="C:\Output\bin\" 

Почему это происходит?

Thanks & С уважением, Pavan.

ответ

24

Я знаю docs say otherwise, но попробуйте OutputPath вместо OutDir.

+2

Yeah OutputPath следует использовать вместо OutDir, в этом случае документы ошибочны. –

+3

Лучше использовать 'DCC_ExeOutput' вместо' OutputPath', потому что, когда у вас есть 'PostBuildEvents', и вы используете' $ (OutputPath) ', тогда'/p: OutputPath = "xxx" 'будет * NOT * использоваться в '$ (OutputPath)', но если вы используете '/ p: DCC_ExeOutput =" xxx "', то он будет работать правильно. – kibab

+0

Я пробовал это, но MSBuild, похоже, игнорирует 'OutputPath', когда в параметрах проекта указан выходной каталог компоновщика. –

4

Для проектов Delphi вам необходимо использовать DCC_ExeOutput, чтобы указать, куда должен идти EXE.

C:\MyProjects>MSbuild "C:\MyTestProject\Test.dproj" /t:Build /p:DCC_ExeOutput="C:\Output\bin\" 

Посмотрите на Test.dproj для любых других параметров, которые вы можете указать.

+0

другие свойства, которые влияют на компилятор Delphi (DCC), можно найти здесь: [http://stackoverflow.com/questions/what-are-the-msbuild-project-level-properties-for-delphi](http:// stackoverflow.com/questions/2373991/what-are-the-msbuild-project-level-properties-for-delphi) –

Смежные вопросы