Article ID: 192934 - View products that this article applies to.
This article was previously published under Q192934
When you run an application that uses Microsoft DAO, you receive the following error message (run-time error 3447):
The Jet VBA file (VBAJET.dll for 16-bit versions, or VBAJET32.dll for 32-bit versions) failed to initialize when called. Try reinstalling the applications that returned the error.
The Microsoft DAO or Jet files are mismatched, or one or more of the DAO or Jet files is missing.
This error most commonly occurs when you deploy a Visual Basic 5.0 application from a development computer that has the Visual Studio 6.0 versions of the DAO and Jet files installed. The Jet files that come with the Visual Studio 6.0 products require an additional file, Expsrv.dll. Because the Vb5dep.ini file does not include this file in the dependency information for Jet, the Visual Basic 5.0 Setup Wizard does not include Expsrv.dll in the Setup files for your application.
Use one of the following resolutions, depending upon your situation.
Expsrv.dll Is Missing from Setup FilesIf you are deploying a Visual Basic 5.0 application from a development computer that has the Visual Studio 6.0 versions of the DAO and Jet files installed, you can work around the problem by adding Expsrv.dll in the File Summary screen of the Setup Wizard. However, you might encounter problems distributing other updated components.
The safest alternatives are as follows:
Other DAO or Jet Files Are Missing or MismatchedAccording to the master list of dependency files for Visual Basic 5.0 and 6.0 (Vb5dep.ini and Vb6dep.ini, respectively), the following files are required for DAO and Jet. Check for these files with the appropriate version numbers on the computer where the error occurs.
If you distribute an application using a Setup created by the Setup Wizard or Package and Deployment Wizard, you also need to check the file Setup.lst to verify the appropriate files and file version numbers. Setup.lst is the master list of the files that are installed by the application setup. You can find Setup.lst in the folder that contains the setup files for your application.
NOTE: All of these files are located in the \Windows\System (or on Windows NT, in the \Winnt\System32) folder, except DAO350.dll. The DAO350.dll file can be found in the \Program Files\Common Files\Microsoft Shared\DAO folder.
Visual Basic 5.0 Files and Version Numbers:
DAO350.dll 3.50.3602.0 MSJet35.dll 3.50.3602.4 MSJInt35.dll 3.50.3602.5 MSJtEr35.dll 3.50.3602.0 MSRD2x35.dll 3.50.3602.0 MSRepl35.dll 3.50.3602.0 MSVCRT40.dll 4.10.6038 or later VB5DB.dll 5.00.3724 VBAJet32.dll 5.0.7122
Visual Basic 6.0 Files and Version Numbers:
DAO350.dll 3.51.1608.0 ExpSrv.dll 6.0.8167 MSJet35.dll 3.51.0623.4 MSJInt35.dll 3.51.0623.0 MSJtEr35.dll 3.51.0623.0 MSRepl35.dll 3.51.0623.0 MSRD2x35.dll 3.51.0623.0 MSVCRT40.dll 4.21.0000 or later VB5DB.dll 6.00.8169 VBAJet32.dll 6.1.8167
For more information about the files installed for each version of Jet, please refer to the following article in the Microsoft Knowledge Base:
178880 INFO: Identifying the Jet Database Engine Components
If you determine that the version of a file on the system is incorrect, perform the following steps to replace it. If you determine that a file is missing, skip to step 3.
If you have multiple versions of Visual Basic or Visual Studio on the same computer, it typically does not alter the development environment. However, regarding application deployment, multiple versions can cause a Visual Basic application to fail to install correctly. This can be caused by newer versions of components that exist on the computer and the inability of the installation application to correctly determine dependency information or register those components. To ensure good distribution of your application, the development machine should have only the necessary version of Visual Basic or Visual Studio installed.
For additional information, please see the following article in the Microsoft Knowledge Base:
193270 INFO: Troubleshooting VB Application Installation Issues
For additional information, please see the following articles in the Microsoft Knowledge Base:
196057 PRB: The Jet VBA File VBAJet32.dll Failed to Initialize
191735 PRB: The Jet VBA File Failed to Initialize When Called
Article ID: 192934 - Last Review: March 11, 2003 - Revision: 2.1