For personal reference
If there is
.dproj file, it's a Delphi version >= 2007.If there is
.bdsproj file, it's Delphi 2005 or 2006.If there is
.dof file, it's Delphi 5-7.If there is not even a
.dof file, no methods.
.dproj file
if .dproj file exists in XML format containing a version entry \project\PropertyGroup\ProjectVersion
- Delphi 2007: empty
- Delphi 2009 and 2010: 12.0
- Delphi XE: 12.2
- Update1: 12.3
- Delphi XE2: 13.4
- Delphi XE3: 14.3
- Update 2: 14.4
- Delphi XE4: 14.4 (the same as previous - Delphi XE3, Update 2)
- Update 1: 14.6
- Delphi XE5: 15.1 or 15.3
- Delphi XE6: 15.4
- Delphi XE7: 16.0
- Update 1: 16.1
- Delphi XE8: 17.1 or 17.2
- Delphi 10 Seattle: 18.0
- Update 1: 18.1
- Delphi 10.1 Berlin: 18.1 (the same as previous - Delphi 10 Seattle, Update 1)
- Update 1: 18.2
- Delphi 10.2 Tokyo: 18.2 (the same as previous - Delphi 10.1 Berlin, Update 1)
- Update 2: 18.3
- Update 3: 18.4
- Delphi 10.3 Rio: 18.5
- Update 1: 18.6
- Update 2: 18.7
- Update 3: 18.8
- Delphi 10.4 Sydney: 19.0
- Update 1: 19.1
- Update 2: 19.2
- Delphi 11.0 Alexandria: 19.3
- Delphi 11.1 (Update 1 for Delphi 11): 19.4
- Delphi 12.0 Athens: 20.1 (or maybe 20.0)
- Delphi 12.2 (Update 2 for Delphi 12): 20.2
- Delphi 12.3 (Update 3 for Delphi 13): 20.3
- Delphi 13.0 Florence: 20.3 (the same as previous - Delphi 12.3, Update 3)
.bdsproj file
As for Delphi 2005 and 2006 there is a .bdsproj file in XML format containing a version entry: \BorlandProject\PersonalityInfo\Option\OptionIn Delphi 2005 it looks like this:
<Option Name="Version" Type="String">1.0</Option>In Delphi 2006 like this:
<Option Name="Version">1.0</Option>
.dof file
There is a [FileVersion] section in .dof file in .ini format for each project up to Delphi 7 inclusively.This section contains the following values:
Delphi 5: empty
Delphi 6: 6.0
Delphi 7: 7.0
If no version is given, the
Packages entry in the [directories] section includes the Delphi version number multiplied by 10:Delphi 5: Packages=...;Vcl50;...
Delphi 4: Packages=...;VCL40;...
Delphi 3: Packages=...;VCL30;...
Examples:
Delphi 3
[Directories]
Packages=VCLX30;VCL30;INETDB30;INET30;Delphi 5
[Directories]
Packages=Vcl50;Inet50;Inetdb50;Vclx50;Indy50;