microsoft.ace.oledb.12.0 is not registered RRS feed

  • Question

  • I've loaded AccessDatabaseEngine_X64 and still get "microsoft.ace.oledb.12.0 is not registered". This is in Visual Studios 2017. This was working but suddenly stopped and I can't get it to work anymore. Any ideas???

    Power shell shows it running

    I'm running Access Professional 2016 64bit

    Windows 10 Pro


    Thursday, April 16, 2020 1:09 AM

All replies

  • Best bet is to re-install the database engine.

    Use this:

    Microsoft Access Database Engine 2016 Redistributable


    Keep  in mind that Visual Studio is a x32 bit application. So while you can use the connection builders in VS?

    When you finally whack the "test connection" ? It will fail from inside of VS. But assuming you forced your project to x64 (and you MUST do this if you going to run/test/debug with ACE x64), then when you launch/debug/test your application, the connection should work. Don't use ANY CPU, since VS is a x32 bit application, and you wind up running your application as x32 when you do this.

    So, you can use the connection string builders inside of VS, but if this is a x64 bit application, then the test connection WILL fail from inside of VS (because VS is x32). But running (or debug) the application as x64 does work, and VS is smart enough and "somehow" does manage to start the program process as x64 bits.

    If your application was forced/set to x32 then the connection builder AND ALSO test connection from VS will work.

    Also from the above download link - make sure you download and pick the x64 bit version of the data engine.

    As a FYI:

    For access program (runtime or full edition). When 2013 came out, a install of full access (or runtime) does NOT NOW expose the ACE data engine. So you still have to install the data engine separate if you going to use 3rd party use of ACE data engine. Due to so much confusing, for 2016 they now again expose the ACE data engine, and you should not have to install the above ACE data engine separate.  This of course assumes you installing Access or have access on the target machines. However, if you not installing Access, and only need + want the data engine, then the above download link is the way to go.

    Your problem is likely that some windows update zooted out the ACE data engine. You can avoid a full download + re-install by going to program and features in the control panel, and right click on the ACE data engine install, and choose repair (or install if repair is not available). This should re-register the ACE engine for use.

    If you have current versions of office, then windows update does seem to update office, and the references to ACE thus now seem to break - this is especially the case if they are running office/access x32, and you installed the x64 bit version of ACE. What occurs is windows update fixes office/access x32, and thus your x64 ACE reference(s) are now gone - hence a "repair" or "re-install" to re-set ACE back to x64 is required.

    If target machines are NOT running office x64, then you might want to consider forcing your .net project to x32, and adopting the x32 bit version of ACE for your .net program.


    Albert D. Kallal (Access MVP 2003-2017)

    Edmonton, Alberta Canada

    Friday, April 17, 2020 7:00 PM