Easysoft ODBC-ODBC Bridge

Why do I get "Initialization of the dynamic link library xxx failed" messages when running in MultiProcess mode?

Article:
00674
Last Reviewed:
15th January 2024
Revision:
3

These messages look similar to the following:

Initialization of the dynamic link library c:\WINNT\system32\COMCTL32.dll failed. The process is terminating abnormally.

although the actual DLL may be USER32.DLL, KERNEL32.DLL or perhaps even a DLL supplied with the Easysoft ODBC-ODBC Bridge. The ODBC-ODBC Bridge client connected to the ODBC-ODBC Bridge Server will hang until the OK button on the dialog is chosen.

We have not seen this problem in Windows NT SP3, although now that we understand it better, it is still possible. We first encountered this problem around about the time NT SP4 was installed.

It appears that around NT SP4, the Windows registry string value in:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\SubSystems\

was changed. In SP3, the value included "SharedSection=1024,3072". In SP4, the value changed to "SharedSection=1024,3072,512". We have found that without the third argument (512), the desktop heap size appears to default to 512K (in NT SP4 and later). A much higher default was used in NT SP3 and earlier. 512 is sufficient for around 60-100 ODBC-ODBC Bridge Server processes, depending on whatever else is running on the desktop. Lowering it to 128 allows around 17 ODBC-ODBC Bridge Servers, and increasing it to 1024 allows around 220 ODBC-ODBC Bridge Servers. It would appear from our experiments that the default heap size was much higher in NT SP3. Note that you need to reboot after changing this value.

Applies To

Knowledge Base Feedback

* Did this content help you?
* Please select one option based on your first choice:

(* Required Fields)