TeeChart 2014.11 in a dll: Works in XE6, but not XE5

TeeChart VCL for Borland/CodeGear/Embarcadero RAD Studio, Delphi and C++ Builder.
Post Reply
jens.mertelmeyer
Newbie
Newbie
Posts: 60
Joined: Fri Nov 22, 2013 12:00 am

TeeChart 2014.11 in a dll: Works in XE6, but not XE5

Post by jens.mertelmeyer » Wed Jun 25, 2014 11:09 am

Now here's a funny one: Thanks to the excellent article TeeChart and GDI+ inside a DLL we know that in previous versions, rendering a Chart with GDI+ in a dll required caution.

The changelog for 2014.11.140512 also states:
Protection against exceptions when using the GDI+ canvas from inside a dll.
If the GDIPLUS.dll is not initialized by the caller executable, TeeChart GDI+ canvas now will detect this problem and will use the old GDI canvas, instead of raising an exception
The problem: I have just tested your attached sample project from the blog page, as well as my own project. Only the binary installer for XE6 seems to contain the fix: If I build the dll with RAD Studio XE5, it will still bail out with an exception. If the dll was built on XE6, everything is fine.

I didn't try building TeeChart from source, I just used the binary installer of 2014.11.140512 for XE5 and for XE6. Maybe the XE5 installer is still containing some old files? Right-clicking on a TChart component however shows "2014.11.140512"

Is there something wrong on my end? I even tried another machine still running XE5 and the dll was also "faulty".

jens.mertelmeyer
Newbie
Newbie
Posts: 60
Joined: Fri Nov 22, 2013 12:00 am

Re: TeeChart 2014.11 in a dll: Works in XE6, but not XE5

Post by jens.mertelmeyer » Wed Jun 25, 2014 5:14 pm

Sorry for further cluttering up the forum, but I can't find a way to edit my previous post.

As it turned out, it got nothing to do with XE5 or XE6. The "older" XE5 installations still contained a "Library-Translations"-path for an older instance of TeeChart 2013.09. This way, one would see "2014.11" on the form designer, but the compiler would smuggle old "2013.09" DCUs in. We were screaming bloody murder. Since RAD Studio always fails at stuff like "Open the VclTee.TeeConst.pas you're using" it was impossible to find out earlier.

Yeray
Site Admin
Site Admin
Posts: 9612
Joined: Tue Dec 05, 2006 12:00 am
Location: Girona, Catalonia
Contact:

Re: TeeChart 2014.11 in a dll: Works in XE6, but not XE5

Post by Yeray » Thu Jun 26, 2014 10:44 am

Hi Jens,
jens.mertelmeyer wrote:As it turned out, it got nothing to do with XE5 or XE6. The "older" XE5 installations still contained a "Library-Translations"-path for an older instance of TeeChart 2013.09. This way, one would see "2014.11" on the form designer, but the compiler would smuggle old "2013.09" DCUs in. We were screaming bloody murder. Since RAD Studio always fails at stuff like "Open the VclTee.TeeConst.pas you're using" it was impossible to find out earlier.
I'm glad to hear you found it!
We use to recommend to double-check the paths to make sure there's no reference to an previous installation.
Best Regards,
ImageYeray Alonso
Development & Support
Steema Software
Av. Montilivi 33, 17003 Girona, Catalonia (SP)
Image Image Image Image Image Image Please read our Bug Fixing Policy

Post Reply