Solved

ADO 32-bit/64-bit Incompatibility

Posted on 2011-03-10
10
1,727 Views
Last Modified: 2012-06-21
I have been developing an application on 64-bit Windows with 32-bit Access for quite some time without problem. Until last week....Now, when I distribute the application to the users (who are running 32-bit Windows with 32-bit Access), any code that includes ADO blows up. If I open the database on any user's machine and change the ADO reference, all works perfectly. I know that I could fix this problem by changing to late binding, but this is not an option since there are hundreds of places where I use ADO.
0
Comment
Question by:TechMommy
10 Comments
 
LVL 75
ID: 35098678
I wonder if this is related:

http://www.utteraccess.com/forum/Avoid-Windows-7-Sp1-t1962370.html

The content in that link came up in an MVP discussion recently ... and your situation sounds possibly similar ...?

mx
0
 
LVL 84
ID: 35098829
What do you mean by "change the reference"?

What are you doing with ADO? Are you just opening basic connections and recordsets? If so, then make sure to use the lowest version of ADO listed on your machine before deploying. This will (sometimes) help with that issue.
0
 
LVL 11

Author Comment

by:TechMommy
ID: 35098839
The information is helpful, but when I go to KB983246, I only see 64-bit downloads. The users' machines are all 32-bit Windows 7. Where can I get the fix for the 32-bit machines?
0
 
LVL 1

Accepted Solution

by:
PAGANED earned 500 total points
ID: 35098841
Windows 7 SP1 :  problem
.
ADODB references are changed when you update to the SP1 pack
.
http://social.technet.microsoft.com/Forums/fi-FI/w7itprogeneral/thread/7c20296f-6184-4c02-a616-2c6bd0bba3c9
.
When you complie your program on a  Win7-SP1 pack, only other WIN7-SP1 pack machines can use your program code that refers to ADODB
.
0
 
LVL 11

Author Comment

by:TechMommy
ID: 35098884
I am currently using Early Binding. I use ADO to execute stored procedures, passing them parameters. I also retrieve data using recordsets (primarily based on views).
0
IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 
LVL 84
ID: 35099235
You could use any version of ADO for that.

I'm not sure if the Windows 7 problem is your trouble or not, but it's worth looking into.
0
 
LVL 57
ID: 35099507
<<I know that I could fix this problem by changing to late binding, but this is not an option since there are hundreds of places where I use ADO. >>

   And that would stink to because while it would work, late binding is a performance hit of 10-15% besides loosing intellisense when you develop.

   If you do need to change, Rick Fisher's Find & Replace would be helpful with that:

  www.rickworld.com

  Well worth it if you don't own it (and it's cheap too!).

<<You could use any version of ADO for that. >>

  I would try using an earlier version and see if it flies like LSM suggested.

JimD.

0
 
LVL 11

Author Comment

by:TechMommy
ID: 35099535
I tried using ADO 2.0 and the same problem occurred. I know that it's a Windows 7 SP 1 problem. If I compile an Access application using Windows 7 SP1, that application CANNOT be run on machines without SP1.
0
 
LVL 14

Expert Comment

by:Bill Ross
ID: 35472342
Hi,

I've had the same issue and went to a DAO solution.  I am trying to start a discussionj on this issue so you might look at this thread.

http://www.experts-exchange.com/Microsoft/Development/MS_Access/Q_26958211.html?cid=1416

Regards,

Bill
0
 
LVL 11

Author Closing Comment

by:TechMommy
ID: 35858011
This did not solve my problem because the problem really doesn't have a solution. The "solution" contained a link to an article talking about the problem, and indicating that it hasn't yet been resolved. Just knowing this was helpful.
0

Featured Post

Maximize Your Threat Intelligence Reporting

Reporting is one of the most important and least talked about aspects of a world-class threat intelligence program. Here’s how to do it right.

Join & Write a Comment

Most if not all databases provide tools to filter data; even simple mail-merge programs might offer basic filtering capabilities. This is so important that, although Access has many built-in features to help the user in this task, developers often n…
QuickBooks® has a great invoice interface that we were happy with for a while but that changed in 2001 through no fault of Intuit®. Our industry's unit names are dictated by RUS: the Rural Utilities Services division of USDA. Contracts contain un…
Using Microsoft Access, learn some simple rules for how to construct tables in a relational database. Split up all multi-value fields into single values: Split up fields that belong to other things into separate tables: Make sure that all record…
In Microsoft Access, learn the trick to repeating sub-report headings at the top of each page. The problem with sub-reports and headings: Add a dummy group to the sub report using the expression =1: Set the “Repeat Section” property of the dummy…

747 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

9 Experts available now in Live!

Get 1:1 Help Now