Solved

Run-Time error 2147221164 "Class not registered" on Recordset.open

Posted on 2002-03-27
11
2,013 Views
Last Modified: 2012-08-13
Can anyone help me with this error. It occurs with an ADO2.7 recordset object and its Open method.

I never recieved it before. I beleive the cause is a bad unistall program that removed/modified some dlls and key entries.

I've been trying to use rededit and MDACs ComChecker to see what the problem is, if any with the windows registry and/or dll files. But my Windows knowledge is limited.

Thanks Experts.
0
Comment
Question by:jponce
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
11 Comments
 
LVL 16

Expert Comment

by:Richie_Simonetti
ID: 6900544
Open your project, go to project references and see if something has a "MISSING:" string.
You could see this link what it is strange by itself pointing to dao error, not ado!
http://www.delphi32.com/info_facts/faq/faq_894.asp

see this also:
http://www.freevbcode.com/ShowMessage.asp?ID=4434
0
 
LVL 4

Expert Comment

by:trkcorp
ID: 6900634
If you are sure the correct mdac_typ.exe was run...
If it is indeed a DAO error like Richie says, you may have a reference to DAO "higher" than your reference to ADO and somewhere in your code the declaration of the recordset is non-explicit (like "Dim rs As Recordset" as opposed to "Dim rs As ADODB.Recordset").  If so it will default to DAO instead of ADO and may be causing the problem.
Just a thought.  Hope it helps, it sure won't hurt...
0
 
LVL 44

Expert Comment

by:bruintje
ID: 6901149
or maybe this KB could be of any clarification

http://support.microsoft.com/default.aspx?scid=kb;EN-US;q141294

don't know if ti's mentioned in the thread of the link Richie posted (i'm a very lazy reader)

:O)Bruintje
0
Online Training Solution

Drastically shorten your training time with WalkMe's advanced online training solution that Guides your trainees to action. Forget about retraining and skyrocket knowledge retention rates.

 

Author Comment

by:jponce
ID: 6903014
Thanks all for the tips. I looked in the references and there is no Missing string. I also check how I instatiated the Recordset object and I used the ADODB.Recordset.

I've kept working with ComChecker. I've fixed all the errors and warnings. I still have the same problem.

Can I reinstall MDACs? I have tried but there was no change. Should I remove it?

Thanks again
0
 
LVL 44

Expert Comment

by:bruintje
ID: 6903035
yeah you could try first a removal and then a clean install, but it's strange nothing came up from all the links above....wel wouldn't be the first time that happens ;)
0
 

Author Comment

by:jponce
ID: 6903161
Thanks all for the tips. I looked in the references and there is no Missing string. I also check how I instatiated the Recordset object and I used the ADODB.Recordset.

I've kept working with ComChecker. I've fixed all the errors and warnings. I still have the same problem.

Can I reinstall MDACs? I have tried but there was no change. Should I remove it?

Thanks again
0
 
LVL 2

Expert Comment

by:corvanderlinden
ID: 6920491
I know this is no help, but this way you know you are not the only one having these problems.
I have had the same problem with Connection.Open and ADO 2.5 and 2.6
The application was installed at 1500 customers. The error occured with 6 customers (the other worked just fine)
We have never been able to solve the problem. We wrote programs to check the registry for ADO and our DLL's entries. Everything was installed OK, but the error remained. The only solution was to reinstall the PC, then it worked.
0
 
LVL 44

Expert Comment

by:bruintje
ID: 6920505
OT comment

Hi corvanderlinden, after the reinstall did you install one ado version?

got the same (unsolved)problem on my work pc and have to compile programs on a second box

the problem goed even further if you change the reference in the vbp file and save try to check it in Sourcesafe it will revert back to the 2.6 dll........tried all combinations but compiling on another box is fine for now

:O)Bruintje
0
 

Author Comment

by:jponce
ID: 6920991
Well I been able fix my problem on my development PC. On start up I loaded the last known good configuration. This enabled me to cotinue with my developement. Soon I will be retrying the install.
-JP
0
 
LVL 16

Expert Comment

by:twalgrave
ID: 7754820
PLEASE DO NOT ACCEPT THIS COMMENT AS AN ANSWER!

No comment has been added lately, so it's time to clean up this TA.
I will leave a recommendation in Community Support that this question is:
- refund/PAQ
Please leave any comments here within the
next seven days.
0
 

Accepted Solution

by:
SpideyMod earned 0 total points
ID: 7811737
per recommendation

SpideyMod
Community Support Moderator @Experts Exchange
0

Featured Post

PeopleSoft Has Never Been Easier

PeopleSoft Adoption Made Smooth & Simple!

On-The-Job Training Is made Intuitive & Easy With WalkMe's On-Screen Guidance Tool.  Claim Your Free WalkMe Account Now

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The debugging module of the VB 6 IDE can be accessed by way of the Debug menu item. That menu item can normally be found in the IDE's main menu line as shown in this picture.   There is also a companion Debug Toolbar that looks like the followin…
Article by: Martin
Here are a few simple, working, games that you can use as-is or as the basis for your own games. Tic-Tac-Toe This is one of the simplest of all games.   The game allows for a choice of who goes first and keeps track of the number of wins for…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…

734 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