ASP.NET/IIS Fix: The 'Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine.
In my latest ASP.NET project, I refresh the sample data using an Excel spreadsheet from the client. After upgrading to Windows Server 2008 R2, I suddenly discovered this error:
The 'Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine.
The error message is totally bogus! The problem is that I’m running IIS on a 64-bit machine and the ol’ OLEDB thingy just isn’t up with the times.
To fix it, go into the IIS Manager and find out which Application Pool the site is using. In my case, it’s called “ASP.NET V2.0”. Next, go to the Application Pools node, and investigate the aforementioned app pool’s advanced settings.
The property Enable 32-Bit Applications needs to be set to True.
I’m sure I’ve run across this before but hadn’t retained the fix. Now it’s where I can find it.
Ken