MaibornWolff 1 Posted February 13 (edited) We have been commissioned to analyse an existing Delphi software and make any necessary bug fixes. The software is supposedly written in Delphi 7, so I installed it at short notice and loaded the project. Problem #1: The property "DoubleBuffered" is not found. As far as I remember, this did not exist in Delphi-7. Problem #2: The following units are used, among others Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Buttons, unit6, unit12, Vcl.Mask, Vcl.ExtCtrls, shellapi, unit0, unit_Sicherheit, archiv_unit, Unit_GobaleFunktionen,Unit_Internet_Konfi, ExtCtrls, StdCtrls, Mask, Buttons, Controls, Classes; Questions: 1. which Delphi version should I at least install / purchase to read the above code? 2. how do I find out whether I need a normal or an Architect/Enterprise version? Edited February 13 by MaibornWolff Translate to english Share this post Link to post
dummzeuch 1505 Posted February 13 (edited) Dotted unit names were introduced with Delphi XE2, which was already a Unicode version, so the code probably will work fine with everything up to Delphi 12. If you want to find out which version was used the last time the project was saved, look at this page in the Delphi Wiki. No idea. I never used anything but the professional version since Delphi 6 (The company I worked for until Delphi 5 had the Enterprise version). If you have any Delphi version >=XE2 or the version you determined using the menthod mentioned in the Wiki, just try it. If not, one option would be to find somebody with Delphi 12 professional which you can trust and let him try to compile the source code. He can probably tell you whether it needs any units that are not part of the professional version but look like they are from Embarcadero. Don't forget that there might be some 3rd party libraries being used. Edited February 13 by dummzeuch Share this post Link to post
Sherlock 663 Posted February 13 1. May I suggest to quickly edit the first question and translate the title to english 😉 2. The version in question is quite surely XE7 which for some people is also "just" 7. Share this post Link to post
DelphiUdIT 172 Posted February 13 May be there is a little trick to discover something: - open a "dproj" file and search for a "<DCC_UsePackage>" section, inside that should be "Intraweb_xx_D10_3" for example, this means that its developed with Delphi 10.3. Look that and you'll find a version ... - from Delphi XE7 you'll find "emsclientfiredac", inside the same section, if the version used is a Enterprise (or Architect) Version. These informations are not official and not sure, but may be a starting point. Share this post Link to post
Vincent Parrett 746 Posted February 13 There is not really any reliable way to determine which version a delphi project belongs to - you can get close by looking at the ProjectVersion element in a dproj file 13 : XE2 14.0 - 14.3 : XE3 14.4 : XE3 Update 3, or XE4 15.0 - 15.3 : XE5 15.4+ : XE6 16 : XE7 17 : XE8 18.0 : 18.1 - 10.0 18.2 : 10.1 18.3 - 18.4 : 10.2 18.5-18.8 : 10.3 19.0 - 19.2 : 10.4 19.3+ : 11.0 20.0+ : 12.0 HTH Share this post Link to post
Patrick PREMARTIN 68 Posted February 14 Hi. If you ned to check some versions numbers for a project, look at https://github.com/omonien/Delphi-Version-Information Share this post Link to post
MaibornWolff 1 Posted February 14 (edited) Hi, thanks for the fast response. The last edit was around 2017, so I assume Delphi 10.x would be suitable. In the meantime I had a chance to look at the .csproj files. These files contain the productversion and that says, it's 18.2, hence Delphi 10.1 Edited February 14 by MaibornWolff Share this post Link to post