Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

"Class not registered" on ADO Recordset.Open

Posted on 2006-11-20
14
Medium Priority
?
764 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
[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
  • 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
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
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

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!

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…
Enums (shorthand for ‘enumerations’) are not often used by programmers but they can be quite valuable when they are.  What are they? An Enum is just a type of variable like a string or an Integer, but in this case one that you create that contains…
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…
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

721 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