PRB: The Driver Parameter for RegisterDatabase Is Limited to 31 Characters
Article ID: 172196
Article Last Modified on 3/2/2005
APPLIES TO
- Microsoft Visual Basic 4.0 Professional Edition
- Microsoft Visual Basic 4.0 16-bit Enterprise Edition
This article was previously published under Q172196
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
Keywords: kbprb KB172196