We recently upgraded from Delphi 2006 to Delphi 2007, and the project files changed from .bdsproj to .dproj.
My research so far indicates that in order to create the .dproj, an existing project needs to be opened in the D2007 IDE. We have over 400 .bdsproj files so doing this manually is not really practical.
The process I came up with was to open all the projects from the command line using:
find . -name *.bdsproj -exec bds.exe -pDelphi -ns -m "{}" ";"
This isn’t ideal because it is quite slow (wait for BDS to load, wait for compile to happen, wait while BDS closes, …).
Is there an efficient way to convert multiple .bdsproj to .dproj?
Note: The ‘find’ in the above command line is a UNIX-like find (e.g. MKS or GNU) which searches for files, not the Windows find which searches for text within files.
Here is a fancier version of the
findsolution using PowerShell. It searches forbdsprojfiles under a specified directory and produces abdsgroupcontaining all of the projects.After the script is run, open the
bdsgroupwith D2007 to convert the projects todproj. D2007 also produces agroupproj, which seems to be the D2007 equivalent ofbdsgroup.Hints:
-helpto see instructions.bdsgroup, it seems to process the projects quicker.dproj.Thanks to:
Here’s the script. It works for me :o)