Support multiple software versions, each built using different versions of Delphi or components

I need to support different versions of software, the problem is this:

  • v 1.0 - Delphi 7 - DevExpress build 20 - TeeChart 5

  • v 2.0 - Delphi 2005 - DevExpress build 40 - TeeChart 7

  • v 2.1 - Delphi 2009 - DevExpress build 52 - TeeChart 8

  • v 3.0 - Delphi 2009 - DevExeress build 53 - TeeChart 2010

(of course, this is an example)

What solution do you offer? Now I use virtual machines and take pictures, one way or another, this means that in practice there is one version of Windows per version of the software.

What else can be done? Usually, older versions need to be supported only for bux fix, and not for new development.

I added (4), this is an additional issue supporting the same version of Delphi with different versions of components. It seems that the snapshot of the virtual machine is still the most convenient way to work without any compromises. Of course, the problem is the complexity provided by third-party libraries, not Delphi itself.

+4
source share
5 answers

Personally, I think that you are already working with the best solution with your virtual machines.

Before I started using different virtual machines for my projects, I used Delphi "-r" for the command line to load another component installs for different projects within the same IDE.

There is also a Jed Configuration Manager tool that simplifies this.

+2
source

If you do not need to do a lot of visual design in the old versions of your application, you can use our approach:

  • We have several DX installations: current and old, which we still need. Only the current one is set correctly, i.e. The IDE only "knows" the current.
  • In the current version of your project, we use the current DX installation (as in the new project).
  • For older versions, we use the appropriate copy, that is, specify the project search path to one of the old copies. This means that the IDE and our source code use different versions of DX! However, this has never been a big problem for us, because we do not need to do visual design in older versions of our application.

If you visually edit the form with the DX components in one of the older versions, the IDE will spit out DFMs corresponding to the currently installed version of DX, which is not used by your old application. In this case, I would just text the DFM comparison before and after editing and check if something was spoiled. If so, fix borken DFM with a text editor.

+2
source

I usually use the JVCL tool to clear properties added to new TCharts, and this works fine. (mixing D7 - TD2006 - D2007 - D2009 - Delphi XE).

See:

+2
source

It is technically possible to use several versions of Delphi on one computer. However, it simply consumes a lot of disk space. And you will need to make sure that each version checks its own folder settings for component libraries and projects. Therefore, you can hold them all. (Just install them in the same order as the versions, so first Delphi 7, then 2005, and finally 2009).
Now I have 2005 and Delphi XE installed on the same system without any conflicts. As long as each version of Delphi has its own set of folders with third-party components and other materials. (Although some add-ons, such as GExperts, will work for any installed version of Delphi.)
Is there a reason why you do not want these three versions to be on the same computer?

+1
source

To support different sets of libraries with the same version of Delphi, you can use the -r option to switch the "registry root" that Delphi uses.

This blog post shows how to do this.

- Jeroen

0
source

All Articles