Solved

"Unable to initialize DAO/Jet db engine" error from CDaoDatabase() class

Posted on 2006-07-11
13
2,773 Views
Last Modified: 2012-08-14
Not sure if this is an ACCESS question or a programming question but I'll start here...

I have a MS Access database, db.mdb, that is accessed by a C++/MFC program using the CDaoDatabase class as such:

      CDaoDatabase *pDatabase = new CDaoDatabase();
      pDatabase->Open("C:\\<some_path_to_the_folder>\\db.mdb");

      CDaoRecordset rs(pDatabase);

It's worked fine for months, perhaps years.  But today it's started reporting a dialog that says:

"Unable to initialize DAO/Jet db engine"

when the line:

      pDatabase->Open("C:\\<some_path_to_the_folder>\\db.mdb");

is executed.  Not sure what's going on or what has changed but I'm baffled.  As far as I can tell, Access itself runs normally on this database.  So I suspect it's some issue with DAO but I'm not sure how to fix it.

This is running on XP SP2 and I tried to install the MDAC 2.8 SP1 but get an error that says:

"This setup does not support installing on this operating system"

Ok, I think that because XP SP2 INCLUDES MDAC 2.8 and will not install again.  I did try installing MDAC 2.7 but that didn't seem to make any difference.
0
Comment
Question by:jhance
  • 5
  • 4
  • 4
13 Comments
 
LVL 39

Expert Comment

by:stevbe
Comment Utility
is it only on one machine?
if so I think we can find the list of files you may need to unregister / re-register.

Steve
0
 
LVL 38

Expert Comment

by:Jim P.
Comment Utility
DAO is part of the Jet engine not the MDAC since about MDAC 2.5
0
 
LVL 32

Author Comment

by:jhance
Comment Utility
This is a one-off application.  So yes, it's only on one machine.


jimpen,

Ok, so DAO is a part of the Jet engine.  Any suggestions on how to fix this?
0
 
LVL 38

Expert Comment

by:Jim P.
Comment Utility
0
 
LVL 39

Expert Comment

by:stevbe
Comment Utility
right ... dao is part of the OS and not MDAC so it could have been installing XP SP2

this KB talks about 95 but I think the register part still applies
http://support.microsoft.com/kb/q177264/

Regsvr32.exe C:\progra~1\common~1\micros~1\dao\dao360.dll
0
 
LVL 32

Author Comment

by:jhance
Comment Utility
jimpen,

When installing the KB you suggested I get:

KB829558 Setup Error

Setup has detected that the Service Pack version of this system
is never than the update you are applying.

There is no need to install this update.
0
6 Surprising Benefits of Threat Intelligence

All sorts of threat intelligence is available on the web. Intelligence you can learn from, and use to anticipate and prepare for future attacks.

 
LVL 32

Author Comment

by:jhance
Comment Utility
stevbe,

I did:

Regsvr32.exe C:\progra~1\common~1\micros~1\dao\dao350.dll

on my system and got the message that it was successfully registered.  Unfortunately, the problem remains.
0
 
LVL 38

Expert Comment

by:Jim P.
Comment Utility
Ok.  Then follow stevbe's suggestion for the regsvr32.
0
 
LVL 38

Expert Comment

by:Jim P.
Comment Utility
Does C++ have its own DAO dll of some sort?
0
 
LVL 32

Author Comment

by:jhance
Comment Utility
I don't know, if there is, it's not obvious.
0
 
LVL 39

Accepted Solution

by:
stevbe earned 500 total points
Comment Utility
Sorry, that dao350.dll was for 95, please re-register dao360.dll (that is the latest and greatest)
0
 
LVL 39

Expert Comment

by:stevbe
Comment Utility
should be in ...

C:\Program Files\Common Files\Microsoft Shared\DAO
0
 
LVL 32

Author Comment

by:jhance
Comment Utility
That did it...  Thanks!@!
0

Featured Post

Find Ransomware Secrets With All-Source Analysis

Ransomware has become a major concern for organizations; its prevalence has grown due to past successes achieved by threat actors. While each ransomware variant is different, we’ve seen some common tactics and trends used among the authors of the malware.

Join & Write a Comment

In the previous article, Using a Critera Form to Filter Records (http://www.experts-exchange.com/A_6069.html), the form was basically a data container storing user input, which queries and other database objects could read. The form had to remain op…
Introduction The Visual Basic for Applications (VBA) language is at the heart of every application that you write. It is your key to taking Access beyond the world of wizards into a world where anything is possible. This article introduces you to…
Familiarize people with the process of utilizing SQL Server views from within Microsoft Access. Microsoft Access is a very powerful client/server development tool. One of the SQL Server objects that you can interact with from within Microsoft Access…
With Microsoft Access, learn how to specify relationships between tables and set various options on the relationship. Add the tables: Create the relationship: Decide if you’re going to set referential integrity: Decide if you want cascade upda…

744 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

9 Experts available now in Live!

Get 1:1 Help Now