Delphi – How to build using MSBuild and Delphi XE2

delphidelphi-xe2msbuild

I've been building projects using Delphi XE and MSBuild using the following simple example which works fine in a batch file. Project1 is an empty project created using 'File | New | VCL forms application in the IDE:

call "c:\Program Files (x86)\Embarcadero\RAD Studio\8.0\bin\rsvars.bat"
msbuild.exe /target:Build /p:config=Release  "c:\scratch\test\project1.dproj" 
pause

If I created a new empty project in Delphi XE2, save it as project1.dproj (the dproj is VERY different from XE) and run the following:

call "c:\Program Files (x86)\Embarcadero\RAD Studio\9.0\bin\rsvars.bat"
msbuild.exe /target:Build /p:config=Release  "c:\scratch\test\project1.dproj" 
pause

It gives:

Build FAILED.

"c:\scratch\test\project7.dproj" (Build target) (1) ->
  c:\scratch\test\project7.dproj : error MSB4057: The target "Build" does not e
xist in the project.

    0 Warning(s)
    1 Error(s)

Time Elapsed 00:00:00.00

I've tried various target names including things I find in Codegear.Delphi.Targets but I dont know wnough about MSBuild. Can anyone help with what I should put please?

LATER RESOLUTION: This was tried on another PC with XE2 and it works ok as suggested by David below. In fact the problem was the content of the RSVARS.BAT file which did not specify the BDS path correctly.

Best Answer

As reported by the OP, the issue was an incorrect BDS path in the RSVARS.bat file.