Monday, 24 July 2017

Delphi 10.1 Berlin fix for issue when opening older project

I recently had an issue with a project that had been updated from XE to Delphi 10.1 Berlin. The issue was when opening the project it could not find some components on the main form (3rd party), however the correct packages are installed and if I started a new project I could add the components from the tool palette without any issues.

One work-around I found was having adding these components to another project, then when I opened Delphi 10.1 Berlin I opened this project and then closed it before opening the project that had problems with the components, and it all worked fine.

In the end the solution I found was the following:

  1. In the package itself, find the unit with the 'Register' procedure.
  2. Check 'DesignInf' is in the uses clause.
  3. At the top of the 'Register' procedure add 'ForceDemandLoadState(dlDisable);' 
  4. Install the package again.
What this does is disables the IDE from using the smart loading of installed packages, this means when the IDE starts it always loads the installed packages.

No comments:

Post a Comment