This question already has an answer here:
I am reading an excel file and I want to access its contents. I am using this connection string:
connectionString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0}; Extended Properties=Excel 12.0;", Server.MapPath(fileName));
But I see this error:
The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine.
My server is running on 64-bit operating system. I have installed Microsoft Office Professional Plus 2010(32-bit) and Microsoft Access database engine 2010 on it.
What is the problem?
Check out the following links, if they solve the issue that you are encountering:
http://www.codeproject.com/Tips/417397/OLEDB-Provider-is-Not-Registered-on-the-Local-Mach
Last one suggests downloading a patch from - http://www.microsoft.com/en-us/download/details.aspx?id=13255
The reason is that the ACE.OLEDB.12.0 dosen't work in the 64-bit Operating system.
You can refer this forum as well. You have to download the patch from here.