Version Migration

Names of components and routines are important! Doing major software redesigns sometimes components are moved to other packages and/or are renamed. This means that existing code must be changed in order to compile again.

I build a very nice Tool for projectwide replacements of multiple components and Tokens that saves you working through all the Steps below (GM - String Replacer).

If components have been renamed please follow the Steps below

  1. Make a Backup of the Projects containing GM-components.
  2. Start your compiler, close all projects and exit again (to avoid that your compiler opens any of your projects the next time it is started).
  3. Uninstall the current version of the GM Packages from your compiler.
  4. Install the new version of the GM Packages to your compiler.
  6. Search the *.dfm Files on your Disk for files containing the old component Type names, for example "TDAOEdit". Use a GREP Tool or the windows find for this search.
  7. Start your compiler, open the *.dfm Files containing old component type names directly using File/Open (open the *.dfm files not the Projects!). The *.dfm Files will be opened in a textual representation. Use Find & Replace to replace the old component type name by the new one: replace "TDAOEdit" by "TGMDBEdit". DO NOT OPEN ANY PROJECT AT THIS TIME.
  8. Save the changes you made to the *.dfm files and close them.
  9. Now open your projects. Bring up every Form you changed before. If properties have been dropped from some components the compiler will ask you what do to with the existing property value. Just press ignore all. Make a minor change to all the Forms that are affected by the component type renaming (drag it some pixels in design mode). Now Save your Project. The compiler detects the component Type mismatches and asks if they should be corrected. Answer Yes to all the message Boxes.
  10. Close and reopen the project. Now replace all occurences of the old data type names in the *.pas files of your project by the new ones.
  11. Everything is fine again.


If Units have been renamed please follow the Steps below

[Home] [Back]