You must override the ECI handleException routine by subclassing CclECI if you are using the async synchronization mode. With async mode a separate thread controlled by the class library dll is created and an exception can occur on that thread. If an exception does occur on that thread, the default exception handler would throw the exception but there is no code in the class library to trap the throw. For unhandled exceptions, the default action of most compilers' runtimes is to terminate the application.
class MyCclECI : public CclECI { public: void handleException( CclException ex) { // Place whatever code you want here, for example set a // semaphore, or generate a Window Message } };Once you have subclassed the ECI Class, you still can only create one object of this class for your application, however do not use the instance method, you must create the object either explicitly e.g.
MyCclECI myeci;or by using the new operator
MyCclECI *pmyeci; pmyeci = new MyCclECI;