Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

"Class not registered" on ADO Recordset.Open

Posted on 2006-11-20
14
Medium Priority
?
766 Views
Last Modified: 2008-01-09
Odd one, this.  I have a VB EXE using ADODB, in which I am creating and opening a Recordset.  It is deployed in a Terminal Services environment.  My admin users can run the EXE no problem, but my non-admin users cannot, getting a "Class not registered" error on the Recordset.Open method.

That two users on the same machine accessing the same files get different results suggests to me that something either in the registry or to do with permissions is at fault, but I'm damned if I can think what.  Any bright ideas anyone?

Cheers
B
0
Comment
Question by:Belazir
  • 5
  • 5
  • 3
14 Comments
 
LVL 5

Expert Comment

by:RainUK
ID: 17986087
I assume you are using Windows 2000 or 2003 server?

It maybe a registry issue, so make sure your administrators use the command to setup the servers installed applications for terminal server users applications.

Basically before installing your app:

1. Go to command prompt, type:  change user -install
2. Install your application ( I hope you are using windows installer MSI )
3. Go to command prompt, type:  change user -execute

0
 
LVL 5

Expert Comment

by:RainUK
ID: 17986089
By the way I am assuming you installed a version of MDAC Update the same way.
0
 

Author Comment

by:Belazir
ID: 17986680
MDAC was already on the servers, and the app is a simple EXE with no other DLLs or anything else attached, so it doesn't actually need an EXE.  Or are you saying it has to be "installed" despite that?  Can't work out what difference that would make.

Yes, it's a 2000 box, sorry.

Is there any quick way of figuring out whether MDAC is the issue?  Is there another common app for example that would give me the same issue, so I can narrow it down to that?

B
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 5

Accepted Solution

by:
RainUK earned 750 total points
ID: 17987696
Does your EXE use read or write to the user portion of the registry?

You could always download the latest version of MDAC and put it on the server. In terms of latest I mean to make sure that you are using the latest version of ADO associated to your EXE, e.g. if using ADO 2.7, then MDAC 2.7 SP1 Refresh would be best for you.

MDAC also comes with a component checker called cch.exe I think. Checks what versions of MDAC are running on the machine and also if anything required is missing.
0
 

Author Comment

by:Belazir
ID: 17987827
No, the EXE checks a couple of files but doesn't touch the registry.

I used the component checker but it looks fine, nothing obvious is missing.  Because of the number of other apps using this server I'm loathe to update MDAC unless I can be certain that it is MDAC at fault.  What I'd ideally like is for someone to say they've seen exactly this problem before and X is what resolved it...
0
 
LVL 4

Expert Comment

by:seshu123
ID: 18026983
Hai,
   You have to create an install which supports both admin users and normal user accounts.  in some setups we can found the screen asking that if this will be available for admin or other users.  so if you create a setup like this then it will solves the problem.



Seshu123
0
 

Author Comment

by:Belazir
ID: 18027170
seshu - I think I'm going to need a little more detail than that... i.e. how/why?
B
0
 
LVL 4

Expert Comment

by:seshu123
ID: 18027323
Hai,
   because in the xp ot nt based system there is an option that if you install one software using the administrator account it will asks you for confirmation wether you are going to install this software for the admin or for entire users.  if you select the admin then it will installs the application and gives the rights to the admin only.  if you select the entire users then it will install this application to the entire users and gives the rights to entire users.  So better try to install the application foe all users.  I have the same problem and i solved like this only.


Seshu123
0
 

Author Comment

by:Belazir
ID: 18027356
I meant - how do I create an install program like this?  I've not seen this option in any of the tools I've used.
0
 
LVL 4

Expert Comment

by:seshu123
ID: 18027382
why don't you use the setup factory it is more user friendly that any other setup creators.


Seshu123
0
 
LVL 4

Expert Comment

by:seshu123
ID: 18372415
accept seshu123
0
 

Author Comment

by:Belazir
ID: 18373420
No... nothing here has actually helped to be honest, but if I have to award the points I will do so to RainUK.
0
 
LVL 4

Expert Comment

by:seshu123
ID: 18373523
nice decission
0

Featured Post

Ask an Anonymous Question!

Don't feel intimidated by what you don't know. Ask your question anonymously. It's easy! Learn more and upgrade.

Question has a verified solution.

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

Introduction While answering a recent question (http://www.experts-exchange.com/Q_27402310.html) in the VB classic zone, I wrote some VB code in the (Office) VBA environment, rather than fire up my older PC.  I didn't post completely correct code o…
When trying to find the cause of a problem in VBA or VB6 it's often valuable to know what procedures were executed prior to the error. You can use the Call Stack for that but it is often inadequate because it may show procedures you aren't intereste…
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…
Suggested Courses

971 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