Chủ Nhật, 11 tháng 9, 2016

The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine

Nguon: http://www.codeproject.com/Tips/417397/OLEDB-Provider-is-Not-Registered-on-the-Local-Mach

Introduction

While working with Microsoft Access Database connectivity with ADO.NET, you might have received this error:
  • The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine
  • The 'Microsoft.Jet.oledb.4.0' provider is not registered on the local machine
  • etc.

Background

I got this error when I was connecting ADO.NET with Access 2010 database from Visual Studio 2010 C#.

Problem


Solution

You need to change the Solution Platform from "Any CPU" to "x86". The steps are given below:
  1. Right click on the Solution File in Solution Explorer:
  2. Click on the Configuration Manager.
  3. Click on the Active Platform Drop down, if x86 is already there then select that, else click on New.
  4. Select x86 from the new platform dropdown:
  5. Compile and run your application.
If you are still facing the issue, then try installing Office System Driver.