Page 1 of 1

TeeChart GUIDs and versions problem

Posted: Fri Jun 26, 2015 8:26 am
by 16673308
Hello,

we have received complaints from our customers that they have two applications which cannot be installed on the same workstation. The one installed last will work fine while the other one does not.

After investigating this further it seems that these two applications both use TeeChart but need different versions to work properly. Unfortunately because TeeChart progIds and clsId GUIDs are not changed when interfaces are changed (f.ex. new properties or methods are added causing the application using a newer version of TeeChart to crash if older version is registered and/or old properties or methods are removed or renamed causing the application using an older version of TeeChart to crash if newer version is registered) we cannot solve the problem our customers are experiencing.

So, to fix this and prevent these problems recurring in the future you should change progIds and clsId GUIDs every time interfaces are changed.

Yes, it may make upgrading a bit harder but ultimately it is the only and correct way to ensure that our customers (and in the end your customers i.e. us) can continue to use our products (an in the end your products).

Perhaps you have some other solution we can use so that these two applications can coexist on the same workstation?

Re: TeeChart GUIDs and versions problem

Posted: Fri Jun 26, 2015 10:57 am
by yeray
Hello,
Tero wrote:old properties or methods are removed or renamed causing the application using an older version of TeeChart to crash if newer version is registered
Backwards compatibility is an aspect we pay special attention to when implementing new features and bug fixes.
However, I'm afraid sometimes we are forced to make significant changes that may break some compatibilities. That's why we created new CLSIDs with v2014.0.0.2 as explained here.

The alternatives I can think on for you are:
- Rebuild the application using an old version with the newer version correcting any error you may find. This way, both applications will use the same version, the latest possible and the version they were built with.
- Modify the CLSIDs of one of the applications to use a version with a different set of CLSIDs.