• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 2910
  • Last Modified:

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

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
jhance
Asked:
jhance
  • 5
  • 4
  • 4
1 Solution
 
stevbeCommented:
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
 
Jim P.Commented:
DAO is part of the Jet engine not the MDAC since about MDAC 2.5
0
 
jhanceAuthor Commented:
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
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
stevbeCommented:
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
 
jhanceAuthor Commented:
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
 
jhanceAuthor Commented:
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
 
Jim P.Commented:
Ok.  Then follow stevbe's suggestion for the regsvr32.
0
 
Jim P.Commented:
Does C++ have its own DAO dll of some sort?
0
 
jhanceAuthor Commented:
I don't know, if there is, it's not obvious.
0
 
stevbeCommented:
Sorry, that dao350.dll was for 95, please re-register dao360.dll (that is the latest and greatest)
0
 
stevbeCommented:
should be in ...

C:\Program Files\Common Files\Microsoft Shared\DAO
0
 
jhanceAuthor Commented:
That did it...  Thanks!@!
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 5
  • 4
  • 4
Tackle projects and never again get stuck behind a technical roadblock.
Join Now