Jet for Access, Excel and Txt on 64 bit systems

by Ibrahim de Untruepe
This article explains how to use Jet to connect an application to Access, Excel or Text data files on 64 bit systems.
The Microsoft OLE DB Provider for Jet and the Jet ODBC driver are available in 32-bit versions only. You can't run them in 64 bit mode.

For example, you have a 32-bit application that uses the Microsoft OLE DB Provider for Jet. If you migrate the application to run in the 64-bit mode, the application cannot connect to the data source by using the Microsoft OLE DB Provider for Jet. This issue occurs because the application requires a 64-bit version of the Microsoft OLE DB Provider for Jet. Note also that a website can be either an 32 bit or 64 bit application.
The Solution
If you run a program in a 64 bit environment and need to utilize jet to open an access, excel or text file there are several options to make this work.
  • Run the program in WoW64 mode (emulates 32-bit on 64 bit systems). This will make the 32 bit drivers work.
  • If the application is an web app hosted on IIS 7 you can choose to configure the web sites application pool to run in 32-bit mode.
  • With the new Office 2010, there will be new drivers coming, "2010 Office System Driver", which will be provided as booth 32-bit and 64-bit versions. You can use these drivers to let you application connect to Access, Excel and text-files in a 64 bit environment, utilizing the new 64 bit drivers. The provider name is "Microsoft.ACE.OLEDB.12.0". You don't need to buy or install the Office suite, the components are available as a separate download.
It is possible to open Excel, Access and text files on 64 bit systems.
You can either configure your app to go 32-bit or you can change your application to use the new 64 bit drivers.