2009-07-05 8 views
21

Quando eseguo delphi progetto 2009 utilizzando riga di comando MSBuild, uscita va sempre alla C: guidareCome specificare la cartella di output di MSbuild?

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

Perché succede questo?

Grazie & Cordiali saluti, Pavan.

risposta

24

Conosco lo docs say otherwise, ma provo OutputPath anziché OutDir.

+2

Sì Si dovrebbe utilizzare OutputPath anziché OutDir, in questo caso i documenti non sono corretti. –

+3

È meglio usare 'DCC_ExeOutput' invece di' OutputPath', perché quando hai 'PostBuildEvents' e stai usando' $ (OutputPath) ', quindi'/p: OutputPath = "xxx" 'sarà * NON * usato '$ (OutputPath)', ma se si usa '/ p: DCC_ExeOutput =" xxx "' allora funzionerà correttamente. – kibab

+0

Ho provato questo, ma MSBuild sembra ignorare 'OutputPath' quando la directory di output del linker è specificata nelle opzioni del progetto. –

4

Per i progetti Delphi è necessario utilizzare DCC_ExeOutput per specificare dove deve essere eseguito l'EXE.

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

Dai uno sguardo all'interno di Test.dproj per qualsiasi altra opzione che potresti voler specificare.

+0

le altre proprietà che influenzano il compilatore Delphi (DCC) possono essere trovate qui: [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) –