Search code examples
vb6windows-server-2003virtualizationadodbfatal-error

Fatal Error when using ADODB in VB6 on Windows Server 2003 SP2


We've got a legacy app (VB6) which works fine on an old Windows Server 2003 box and has been for many years. Recently we've had to move it to a different physical location and in doing this we cloned the box with virtualisation and placed it elsewhere.

In theory these two environments should be identical.

On the new box however the app falls over when calling the RecordCount method of an ADODB.Recordset. I should say that I can successfully read the ADODB.RecordSet.Properties.Count property with no problem on the line before.

The event viewer reports the following:

Event Type: Error Event Source: Application Error Event Category: (100) Event ID: 1000 Date: 28/09/2012 Time: 11:15:27 User: N/A Computer: APP01 Description: Faulting application Control.exe, version 1.0.0.6, faulting module ntdll.dll, version 5.2.3790.4789, fault address 0x0002c6e4.

I can only imagine there is something wrong with using ADODB within a virtualised environment. Any ideas?


Solution

  • The problem was caused by using a different driver in the ODBC Data Source Administrator when setting up the connection.

    Previously we were using the Microsoft ODBC for Oracle driver, however when we manually set up this connection on the new server we mistakenly selected a different one (provided by the Oracle client).

    The resolution is to ensure you're using the exact same driver.

    enter image description here