Using multiple ActiveX controls

Posted by Connie

I have recently added a Serial interface (ActiveX control - Greenleaf CommX) to my standalone GUI application that contains a Map (ActiveX control - MapInfo MapX) and receives, forwards, and maps data from 2 different interfaces, at or near real time. Works great if both interfaces are TCP/IP, using the Delphi supported controls.

However, Delphi 7 does not have Comm port controls, so I have implemented the Greenleaf control. I am using event-driven programming, no explicit thread creation. I have tried using the ActiveX.CoInitialize and CoUninitialize methods to synchronize the processing within the Serial control and the Map control, with no success. Receiving and transmitting Serial data works without a hitch, but if I receive data from the other interface and try to write it to the map while receiving data from the Serial control, I have lost access to the Map control, so unrecoverable errors occur. I have tried looking for literature that thoroughly explains what is needed to use multiple ActiveX controls simultaneously and have had no luck so far. I'm desperate!

Reply by Stijn Sanders

Sounds like a far stretch to be using ActiveX components to talk over a serial port. I've been using htp://synalist.sourceforge.net/ for that since a while.