The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine in 64 Bit Machine
c#, windows
Solution
You are using `Microsoft.ACE.OLEDB.12.0;` (ADE for short). This means that you need to install the appropriate bits on your target machine. This is complicated by the Architecture choosen when you build your application.
You build for AnyCPU:
Install ADE 32bit on 32bit target machine
Install ADE 64bit on 64bit target machine
You build for x86
Install ADE 32bit on 32bit or 64bit target machine.
As you can see, the easiest way to get out is to compile your application for x86 architecture.
Problem
I am working in Windows Application. I am reading a value from Excel and updating into the database. My code is ``` string Con_Str = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + filepath + ";Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1\";"; ``` Its working fine in my local and i am having 32 Bit Machine. I ran the exe in Server which is 64 Bit Machine. There i am getting the error like ``` The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine. ``` I had downloaded the latest from this link.. http://www.microsoft.com/en-us/download/details.aspx?id=13255 Still i am getting the Issue. How to fix this..