Solved

ActiveX Data Objects library problem (msado15.dll)

Posted on 2003-10-24
17
34,171 Views
Last Modified: 2012-08-14
Hi,

I am using ADODB types in my Access-application and all went fine. Recently I got  a strange problem when installing the program on another computer.

Today I found out that the problem is related to the version of msado15.dll. My version (XP) is 2.71 and the version on the other computer (Win98) is 2.10.

Is this a known problem and how to solve this. Is there a download available to install the newer (XP) version of msado15.dll on a Windows-98 computer.

Or should I instead use another library? I use the ADODB types because they have better support for execution of SQL-command.
My code is full with ADODB.Recordset so I would prefer to have the msado15.dll in sync.

I tried to copy the complete Ado dir from my XP-machine to the Win98-machine. But however the regsvr32 complains it cannot register the dll coz of missing components.

Anyone a suggestion?

Thanx in advance,
Alexander
0
Comment
Question by:aperdon
  • 8
  • 6
  • 2
  • +1
17 Comments
 
LVL 44

Accepted Solution

by:
bruintje earned 125 total points
Comment Utility
you can download the version you need here

source : http://msdn.microsoft.com/library/default.asp?url=/downloads/list/dataaccess.asp

be sure to have versions the same over your machines, the problem with the ado controls is that it was not always clear which version is newer and versioning labels going back with 2.1 and 2.5 but if the xp got 2.7 you could give that one a try on the win98 machine too
0
 
LVL 1

Author Comment

by:aperdon
Comment Utility
Is MDAC the same as ActiveX Data Objects?
Is MDAC related to msado15.dll?

I agree it is far from clear what is what. I found a 2.1 referrring to msado21 (or 20). But msado15 says it is version 2.71. Strange??

Is this a known issue when developping on XP but installing on a Win98.

Alexander.
0
 
LVL 44

Expert Comment

by:bruintje
Comment Utility
yes the issue was there even before windows xp with the versioning of msado15.dll

mdac is the complete data access control package containing all ado activex controls including msado15.dll [if you look in your references you see there are more controls then only that one]

you can see on that page that version 2.8 is the latest but since you got 2.7 on the xp system and a earlier version on win98 suggest that you install the 2.7 version on the win98 further on that page there is also a version checker to see which version you actually have installed on a machine
0
 
LVL 3

Expert Comment

by:jjjtuohy
Comment Utility
Alexander,
I've had the same problem with MsCalendarr. The simplest solution is to un-tick the 2.71 reference UNDER XP and tick the 2.1 reference. Then save the file and copy over to the WIN98.
Regards,
John
0
 
LVL 1

Author Comment

by:aperdon
Comment Utility
Bruintje,

Ok cool this verison checker. Thanx, I will check it after work. However, to test the Win98-machine it will take maybe a few days coz it is someone else his machine and I need to visit him. He is too unexperienced to install it himself :-(.

Indeed my XP machines shows a lot of versions for ActiveX Data ranging from 2.0 to 2.7.
I guess it is wise to continue with this ADO-library? All my source-code heavily depend on the ADODB types. I perform a lot of application SQL queries with ADODB instead of using the Access-Jet engine (DAO right?). Beside form-handling is only use DAO for versioning the database by setting properties on the MDB file. (I think, I am not sure coz I dont have the source now by hand).

John,

I am still not sure after changing from 2.7 to 2.1 that both machines will be in sync. Another user has XP installed and I dont know what the effect will be for him when I change to 2.1. Maybe it is not installed on his machine. Since 2.7 is working on his XP-machine, and also on mine XP-machine, I rather prefer to update the Win98-machine to 2.7 as Bruintje proposes.

Alexander.
0
 
LVL 3

Expert Comment

by:jjjtuohy
Comment Utility
Alexander,
Trust me, it works. However I can understand your reluctance when you have multiple XP systems and one W98 but it is only a quick fix if you are stuck. The core question is; do you use the extra functionality of 2.7 over 2.1??
John
0
 
LVL 1

Author Comment

by:aperdon
Comment Utility
The main problem is that the person using the other XP-machine suffered very long because of a similar problem. If I now change this, I dont know the effects for him. He really needs to get going now and is very pi...d-off over the last couple of weeks.

I even dont know if he has 2.1. I assume yes coz it is default installed in XP?

All source is written to the msado15.dll. First to version 2.10 (or whatever version which was compitable to that one) on a Win2K-machine. A few months ago I upgraged my machine from 2K to XP. I never got problems coz I did not install the programm on his machine after the upgragde. He still had the program which I had compiled on the 2K-machine. Lately I had to fix a bug in the program and I provided him with a newer version. This new version is compiled on the XP-machine.

However, 2.7 seems to be better than 2.1. Even not using the extra-functionality you can take major advantage with some bug fixing. For what I guess is that 2.1 is very very old and 2.7 is also very old, but not that very very very old.

I would prefer the update to 2.7 on the Win98 machine. In the nearby future another XP-user will use the program. And when we all in sync now, he will get in sync too.

What is the difference between both versions? Even I think that 2.1 is pointing to a complete different library. (a tlb) There are different kinds of MDAC pointing to different msado files. Very confusing.

Alexander.
0
 
LVL 3

Expert Comment

by:jjjtuohy
Comment Utility
EXTRACT FROM:
 http://support.microsoft.com/default.aspx?scid=kb;en-us;259379

These errors are caused by new ActiveX Data Objects (ADO) interfaces that are referenced in the ADO 2.5 or later-produced image and that are not found in the Msado15.dll file on the target system.

To prevent this problem, Visual Basic programmers should reference the Msado20.tlb file


mmmmmmmmmm!
John
0
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 
LVL 1

Author Comment

by:aperdon
Comment Utility
I use ADODB.Record. For sure. So msado20.tlb wont solve my problem.

Alexander.
0
 
LVL 1

Author Comment

by:aperdon
Comment Utility
Bruintje,

Sorry I did not respond yet to ur answer. Too busy with work. But however the version-check-tool was very cool. It precisely gave me information about which dll's are installed and which version, and how the current dll's are matched to well known versions.

Alexander.
0
 
LVL 3

Expert Comment

by:jjjtuohy
Comment Utility
It was merely a simple point to illustrate that it's not a capital offence to retrograde your reference version.
John
0
 
LVL 1

Author Comment

by:aperdon
Comment Utility
Hmm. In simple english please. I am dutch.
0
 
LVL 3

Expert Comment

by:jjjtuohy
Comment Utility
Sorry Alexander your English seemed perfect to me!!
The extract was only an example to show that such a method is approved by Microsoft. Bringing your reference from 2.7 to 2.1 is a Microsoft approved method to solve a refenence problem in the short term.
Regards,
John

PS: We describe difficult language as Double Dutch
0
 
LVL 1

Author Comment

by:aperdon
Comment Utility
John,

Ok. I see. I get your point.
Thanx for the compliments. But my vocabulary is just restricted to the standard terms.

Alexander.

ps. I thought "Double Dutch" meant both a pill and condom as anticonception
How to say when u go for diner and everyone exactly pays their own meal and drink? Also something .... Dutch
0
 
LVL 3

Expert Comment

by:jjjtuohy
Comment Utility
:)
It's called Going Dutch. I never heard of the first one though... does it mean that the man & woman bring their own?!!!!
John
0
 
LVL 39

Expert Comment

by:stevbe
Comment Utility
No comment has been added lately, so it's time to clean up this TA.
I will leave the following recommendation for this question in the Cleanup topic area:

Accept: bruintje {http:#9612725}

Please leave any comments here within the next seven days.
PLEASE DO NOT ACCEPT THIS COMMENT AS AN ANSWER!

stevbe
EE Cleanup Volunteer
0
 
LVL 1

Author Comment

by:aperdon
Comment Utility
I found out that MS-Access is very easy to get library problems. Adding an other ActiveX data component (like a special GUI-component to a form) will cause a similar problem. Even I can reproduce a case in which standard functions like Len don't work anymore. For some reason MSA doesn't accept the order in your external libraries.
0

Featured Post

Complete Microsoft Windows PC® & Mac Backup

Backup and recovery solutions to protect all your PCs & Mac– on-premises or in remote locations. Acronis backs up entire PC or Mac with patented reliable disk imaging technology and you will be able to restore workstations to a new, dissimilar hardware in minutes.

Join & Write a Comment

Today's users almost expect this to happen in all search boxes. After all, if their favourite search engine juggles with tens of thousand keywords while they type, and suggests matching phrases on the fly, why shouldn't they expect the same from you…
In the article entitled Working with Objects – Part 1 (http://www.experts-exchange.com/Microsoft/Development/MS_Access/A_4942-Working-with-Objects-Part-1.html), you learned the basics of working with objects, properties, methods, and events. In Work…
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…
Familiarize people with the process of retrieving data from SQL Server using an Access pass-thru query. Microsoft Access is a very powerful client/server development tool. One of the ways that you can retrieve data from a SQL Server is by using a pa…

743 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

17 Experts available now in Live!

Get 1:1 Help Now