PRB: Driver Parameter for RegisterDatabase Limited to 31 Chars

ID: Q172196

The information in this article applies to:

SYMPTOMS

With some ODBC drivers, the RegisterDatabase method of the DBEngine object will cause an error in the ODBC Administrator. The error message is:

   "The setup routines for the <driver name> could not be found. Please
   reinstall the driver."

CAUSE

This error will occur if the name of an ODBC driver contains more than 31 characters.

RESOLUTION

The workaround is to open ODBCINST.INI in a text editor (such as Notepad) and modify the names of the offending ODBC drivers to 31 characters or fewer. The names are listed under the section [ODBC Drivers]. Each ODBC driver will also have a section of its own. The names must be modified in both places. Please see below for an example.

The name for the Access driver is 32 characters:

   [ODBC Drivers]
   Access 2.0 for MS Office (*.mdb)=Installed

   [Access 2.0 for MS Office (*.mdb)]
   Driver=D:\WINDOWS\SYSTEM\ODBCJT16.DLL
   Setup=D:\WINDOWS\SYSTEM\ODBCJT16.DLL

The new name is only 24 characters:

   [ODBC Drivers]
   Access 2.0 for MS Office=Installed

   [Access 2.0 for MS Office]
   Driver=D:\WINDOWS\SYSTEM\ODBCJT16.DLL
   Setup=D:\WINDOWS\SYSTEM\ODBCJT16.DLL

The Visual Basic code to register an ODBC data source for the above driver is:

   DBEngine.RegisterDatabase "Test", "Access 2.0 for MS Office", False, ""

STATUS

Microsoft is researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.

Additional query words: dsn kbVBp500 kbVBp kbWinOS98 kbDSupport kbdse kbODBC

Version           : WINDOWS:4.0
Platform          : NT WINDOWS
Issue type        : kbprb

Last Reviewed: August 24, 1998