• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 655
  • Last Modified:

Unable to place a dll in Windows 7.0 64 Bit OS


I am working on VS 2005 / MS Access .Net Application.

On deploying this application on any 32 bit Operating System, Application works well.

But on deploying it on 64 Bit Operating System .. Application Fails to communicate with MS Access Database.

This is because, Database Connection is depending on Oledb32.dll ..!

Now, i want to know whether this dll is there in Windows 7.0 as default.... or does it have another version like Oledb64.dll

Or how to copy from 32 Bit Operating system and paste it on 64 Bit Operating ...

If so where we need to paste . .. like any folder called ASSEMBLY is there in Windows 64 OS ?
0
chokka
Asked:
chokka
  • 2
  • 2
1 Solution
 
Todd GerbertIT ConsultantCommented:
When you compile your application for "Any CPU" it will run as a 32-bit application on 32-bit versions of Windows, and as a 64-bit application on 64-bit versions of Windows.  Therefore, when you install it on Windows 7.0 x64 it is a 64-bit application, and this system most likely has a 32-bit version of Office - and COM does not work between 32- and 64-bit applications, both must be 32 or 64.
Recompile your application for x86, this way it will always run as a 32-bit application, even on 64-bit versions of Windows.
0
 
chokkaStudentAuthor Commented:


Actual Error is

Microsoft.Jet.OLEDB 4.0 is not registered on Windows 7.0 64 Bit Operating System
Error.jpg
0
 
Todd GerbertIT ConsultantCommented:
There is no 64-bit driver, Microsoft.Jet.OLEDB.4.0 / MDAC / DAO is officially deprecated, so there will be no new 64-bit support).
Recompile your application as x86 to run it as 32-bit, which will allow it to use the 32-bit Microsoft.Jet.OLEDB drivers that should already be present on the system.
http://msdn.microsoft.com/en-us/library/ms810810.aspx#mdac_technologies_road_map_old_topic5
There is no 64-bit version of the Jet Database Engine, the Jet OLEDB Driver, the Jet ODBC Drivers, or Jet DAO available. This is also documented in KB article 957570. On 64-bit versions of Windows, 32-bit Jet runs under the Windows WOW64 subsystem. For more information on WOW64, see http://msdn.microsoft.com/en-us/library/aa384249(VS.85).aspx. Native 64-bit applications cannot communicate with the 32-bit Jet drivers running in WOW64.
 
0
 
grayeCommented:
Although tgerbert has the answer nailed...
I'd just like to point out that there now is an alternative to the OleDB.Jet drivers that does work in the 64-bit world.  The new Office 2010 has a 64-bit version of the "Microsoft Access Database Engine".  It's a pain to get installed if you have any 32-bit office components already installed, so I'm not suggesting that you go this way...  again tgerbert's solution is probably the best for  you.
http://www.microsoft.com/downloads/en/details.aspx?familyid=C06B8369-60DD-4B64-A44B-84B371EDE16D&displaylang=en 
0
 
chokkaStudentAuthor Commented:

I am facing issues on communicating to MS Access DB in 64 Bit Processor

I dropped the plan on continuing with MS Access and prepared for migrating to SQL 2005 Express Edition.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now