Steema Issues Database

Note: This database is for bugs and wishes only. For technical support help, if you are a customer please visit our online forums;
otherwise you can use StackOverflow.
Before using this bug-tracker we recommend a look at this document, Steema Bug Fixing Policy.



Bug 1897

Summary: TeeChart ActiveX control 64-bit does not work at all in address space above 4GB
Product: ActiveX TeeChart Reporter: Krzysztof Zyczynski <krzysztz>
Component: ChartAssignee: Steema Issue Manager <issuemanager>
Status: UNCONFIRMED ---    
Severity: blocker    
Priority: ---    
Version: TeeChart Pro Activex Control 2017.0.0.0 Release   
Target Milestone: ---   
Hardware: PC   
OS: Windows   
Chart Series: --- Delphi / C++ Builder RAD IDE Version:
Attachments: Sample application crashing TeeChart dll

Description Krzysztof Zyczynski 2017-07-21 07:50:50 EDT
Created attachment 773 [details]
Sample application crashing TeeChart dll

Hi,

When we try to use TeeChart component and memory allocation is around 4GB or more at that time the dll simply crashes (even on CoCreateInstance). It happens when lower address space below 4GB is already used. This means the problem is most probably incorrect upgrade of component to 64bits (casting pointers to long etc).

We are developing a software that is processing large amount of telecommunication data and as a result RAM usage hits tens of gigabytes in some cases. As a result this problem is a BLOCKER for us.

Problem is visible in 64bit applications only: we are using version 2015 at the moment but the problem also exists with latest 2017 version.


To reproduce:

1. Grab a decent PC (8 - 16GB) with Windows 7 64bit installed (I was not testing it on 8 or 10 but probably the problem will be visible there as well).

2. Register TeeChart201764.ocx with regsvr32.exe

2. Create simplest application (WinAPI / DIalog or MFC) with COM support (CoInitialize(NULL); )

3. Allocate 4.5GB before doing anything with TeeChart

4. Create InProcess TChart component:
::CoCreateInstance(__uuidof(TChart), NULL, CLSCTX_INPROC_SERVER, __uuidof(IUnknown), (LPVOID*)&pUnk);

5. You should see an access violation

Please see attached sample application that is crashing immediatelly on CoCreateInstance call (see TeeCrashDemoDlg.cpp lines 104 - 112). Please change project settings to 64bit first.

Any questions / additional info request please let me know:

krzysztz@amdocs.com
Software Development Specialist


Regards,