Database Exchange control is developed based ADO (ActiveX Data Objects) technology. There are some known issues with Database Exchange control when it is used with some data sources.
Handle Leak Occurs When a dBase File Is Used as Data Source
ADO has a problem releasing Windows resources (Handles) if used with the ODBC driver for dBase. This problem occurs when you frequently open and close the page upon which the Database Exchange instance is running. When the page containing the Database Exchange control is closed, resources used by the control should be released on termination. However, on this occasion, the handles are not released. It is believed that this problem is caused by connection object of ADO.
If you start the Windows Task Manager and select the "Handle Count" column on the "Process" tab, you’ll notice that the handle count increases under the Citect32 process, and that there is some memory leakage because each handle consumes memory as well. The same problem occurs if Jet OLE DB Provider is used to connect dBase files.
If you must use Database Exchange with DBF files, do not close the Database Exchange page. Instead, hide it when you navigate to other pages. When you revisit the page give the page focus.
Memory Leak Occurs When You Query an Open Excel Worksheet
When you retrieve an ADO Recordset from an Excel worksheet that is open in Excel, a memory leak occurs in the Excel process. Repeated queries sometimes cause Excel to run out of memory and raise an error, or cause Excel to stop responding.
The memory used by the ADO queries cannot be reclaimed by closing and releasing the ADO objects. The only way to release the memory is to exit Excel.
If possible, query the Excel worksheet only while the file is not open in Excel.
If the worksheet must remain open (for example, to allow dynamic recalculation of worksheet values on an ongoing basis) use one of the following methods as a workaround: