sticky
How to fix: “The Microsoft.ACE.OLEDB.12.0 provider is not registered on the local machine” RRS feed

  • General discussion

  • Since The ACE provider is not installed on Windows operating systems by default. We will encounter the issue “The Microsoft.ACE.OLEDB.12.0 provider is not registered on the local machine” during developing when we access excel, Access, etc. by using ACE provider. So we need to install it by manual. The following link are the related provider.

    Note:

    1. All offices from 2007-2016 contain the provider "Microsoft.ACE.Oledb.12.0".
    2. You could choose the appropriate runtime engine (32/64) via your application architecture.
    3. You could check if the provide is installed via the following powershell command.

     (New-Object system.data.oledb.oledbenumerator).GetElements() | select SOURCES_NAME, SOURCES_DESCRIPTION

     

      4. If the installed "AccessDatabaseEngine" still does not work, please change the Active Solution Platform from "Any CPU" to "x86".


    MSDN Community Support
    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.


    Thursday, November 15, 2018 3:23 AM
    Moderator

All replies

  • I have a program running in Visual Studio 2017(VB.net) that uses a connection string "Provider=Microsoft.ACE.OLEDB.12.0 &  Data Source=Phase10.accdb;". Its working fine, but I've started a new project and used the same connection string and it's now telling me 'The 'Microsoft.ACE.OLEDB.12.0 &  Data Source=Phase10.accdb' provider is not registered on the local machine.'

    How can it work perfectly in one project and not in the other.

    Please advise

    Wednesday, February 20, 2019 2:00 PM