Breaking ACE Out Of The Bubble
Published Feb 11 2020 12:04 PM 17.4K Views

Previously, users were required to install the Access Database Engine (ACE) Redistributable (or “redist”) to expose ACE outside of the Office bubble. Upon transferring data between existing Microsoft Office files and those outside of Office, one needed to download a set of components to facilitate the process. 2016, 2019, and O365 consumer versions of Access have not exposed its ACE engine outside of Office, including the ACE OLEDB provider.


Well, the Access team has good news for you. If you have O365, or click-to-run versions of Access 2016/2019 Consumer installed, you will no longer need to install the ACE Redistributable to use the ACE OLEDB provider (Microsoft.ACE.OLEDB.16.0, or Microsoft.ACE.OLEDB.12.0). This will now enable previously unsupported scenarios, including allowing PowerBI to connect to Office data. Custom applications will also be able to connect to Office data without installing the redist.


If you have not installed Office, you can continue using the ACE redist, or you can install the Office 365 Access Runtime, which will include support for anything added after our 2016 MSI version. 


The team is working to expose ODBC and DAO interfaces very soon. Currently With ODBC, users still need to build DSNs to ACE data within an Office app. With DAO, users will still need a complete MSI Office installation to use SQL Server’s migration assistant, which transfers data from various sources into SQL Server. These scenarios are being addressed by the Access team.



Please send us your thoughts and feedback on the first step of our ACE Redistributable process! The team is always looking for more ways to improve. You can leave comments here, or use the Send-A-Smile tool in Access to let us know what you think of this experience.  


Hi Ebo,


I just wanted to know whether this initiative will allow creating 32-bit and 64-bit connectors side-by-side on the same machine. The use case is connecting 64-bit SSMA between 32-bit Access C2R and SQL Server 2019 (64-bit)?


Many thanks,

Graham R Seach

Access MVP (2001-2010)

Senior Member

Hello Ebo,


That's great news! Can you please clarify few questions:
1) How this change will be delivered to those who already have Office installed? Do they have to do Office update, or Windows update, or whatever else?
2) Office x64 COM objects such as Access.Application - they are accessible both for x86 and x64 consumer apps. Will this out-of-bubble ACE have the same feature? I mean if someone has Office x64 installed - will he be able to use Microsoft.ACE.OLEDB from x86 application?
3) As I remember this bubble thing was introduced in Office 2010. Can you please confirm that those who still use Office 2010 & 2013 - they still have to install ACE redistributable to be able to use Microsoft.ACE.OLEDB?

UPDATE and one more question -
4) when these changes will be available? I've just checked with my O365 x64 v 2001 build 12430.20184 which should be the latest for the current date - looks like it does not work yet.



Senior Member
Hi Ebo! this is good news! But please share more detailed information on the technical implementation of this "Bubble Breakout". Best regards, Philipp

@gseach Hi Graham.  No, this does not change the restrictions on having both 32-bit and 64-bit Office installed on a machine (it isn't supported).  If you are using 64-bit SSMA, then you need a 64-bit version of Ace, which means you should be using a 64-bit version of Office.




@k-semenenkov Hi Konstantin.  

1) This is part of the Office update, version 2001, which has build numbers starting with 16.0.12430.*

2) No, this works the same way that it works for MSI installs, including the Ace redist, if you have x64 Office installed, the COM components are only registered for 64-bit applications. While there are some ways to work around this if you are writing your own custom applications, the situation is exactly the same here as it was before the introduction of C2R.

3) Yes, we are not changing 2010 or 2013 C2R, so if you are using those, you will still need the Ace Redist.

4) That build should have the changes, can you explain what you tried, and what happened?




Senior Member

@Shane Groff
Thanks for update!
4) sorry, my mistake, I was so happy to read these news that I forgot that I am using DAO.DBEngine, not Microsoft.ACE.OLEDB.

Microsoft.ACE.OLEDB.16.0 works fine, but DAO.DBEngine.120 - not. As I understand it is still "in the bubble". I didn't check recent OLEDB provider features, but as I remember earlier it was not able to process some pure Access-specific data types such as attachments. Do you have plans to expose DAO.DBEngine.120 out of bubble?


Yes, we do plan to expose the DAO interfaces as well in a future release.




If you are using SSMA with the Access MSI runtime, and have O365 installed, you may find that SSMA stops working after O365 updates.


If you encounter this issue, the workaround is to reinstall the 2013 Access Runtime.  This problem will go away once O365 supports all of the COM interfaces for non-Office applications, at which point it will no longer be necessary to install an MSI build to use SSMA.





Occasional Visitor
Hi Shane, Any chance you could provide an approximation as to when the other COM interfaces will be included?
Occasional Visitor

"2016, 2019, and O365 consumer versions of Access have not exposed its ACE engine outside of Office..." If I am reading this correctly then ALL versions of Office 2016 and 2019, both C2R and MSI, also do not expose ACE outside of Office.  Is this correct?  If so are there plans to expose ACE for these MSI Office installations as well?


Only C2R installations have a bubble. For MSI installs, everything is exposed already.

If you have Office 2016 MSI, for example, you can already use the version of Ace installed with that version of Office in non-Office applications, there is no need to install the Access Database Engine Redistributable in that case.

Occasional Visitor

@Shane Groff Do you have any idea when ACEDAO support will be introduced for C2R Office installs? Thanks.


@GarethJHorton Yes, it is enabled in version 2009 and after, so it is available now in Current Channel builds.  For Semi-Annual Channel, it will be available in July 2021.

Occasional Visitor

Thanks for the quick response @Shane Groff


After the simple life of deploying ACE 2010, it looks a lot more complicated building an installer to deal with the matrix outlined in


It's a shame there is no lightweight ACE 2013, the Runtime is pretty large and performing silent installation also appears to be somewhat challenging too.


Do you have a link for the canonical way to detect the channel/version of a C2R Office, so we can deploy/skip the A2013 Runtime appropriately?





Senior Member



We got problem in our product with the "built-in" ACE in Office 365 version 2010, the 10th November release (Build 13328.20356).

It has been working with ACE2010 and ACE2016 in older Office-versions.


Any suggestions?




Best regards,




@kimpan Kim,


Try uninstalling any previous Access Database Engine Redistributable / Runtime installations from the machine and then perform a repair of Office 365. 


If the issue persists, please provide reproduction steps that describe how you're interacting with ACE when you receive this message. Additionally, what happens if you click No to this prompt? Are any events recorded in the Event Viewer for Application Events?




Senior Member

Hi denniwil,


Thanks for your reply.


However it has nothing to do with older MSI- nor older C2R-versions of Office being preinstalled. It has been confirmed on clean Windows OS with Office C2R-versions only installed (Office 2016, Office 2019, Office 365 and Microsoft Apps 365). The versions 2010 release starting from 10th November 2020 and also the following and record-replacing version 2011.


What I notice in the code is that what worked in older Office-versions dating even back to Office 2010 (MSI) with ACE2010, Access 2013 Runtime and ACE2016, stopped working. When the AceCore warning appears, I see that a previously ODBC handle value that was closed using SQLDisconnect is being returned in the afterfollowing SQLDriverConnect which was called with different connection string (another MS Access db-file).


I have not been able to reproduce it in a demo solution to send it in to Microsoft Premier, but this occurs when MFC application A starts MFC Application B and both are accessing several MS Access files using ODBC functionality residing in a MFC DLL. 


Best regards,




Occasional Contributor

@kimpan, ODBC connectivity is not affected by this change yet. It is still "in the bubble". If I understand correctly, it is planned for early 2021 to also break the ODBC connectivity out of the bubble.

Senior Member

Hi Philipp,


From the 10th November 2020 releases of Office C2R (2016/(2019/365) technology based Office versions 2010 and 2011,  the ACE is "built-in" and "external/redist" ACE such as ACE2010, Access 2013 Runtime, ACE2016 should not be installed at all as it can cause malfunction.


This is the official statement we got from Microsoft Premier Support and if it's incorrect we would like to know.


If the "external/redist" ACE I mentioned above was installed prior to the Office update to version 2010 and 2011, then ACE must be uninstalled and Office needs to be repaired before ODBC works. This has been confirmed by our QA team.


Best regards,







Occasional Contributor

@kimpan , please read the post you are commenting under.

@Ebo_Quansah wrote:

The team is working to expose ODBC and DAO interfaces very soon. 

This is still not completed/released. Exposing ODBC is on the Access Roadmap for January 2021.

Best regards,


Senior Member

@Philipp Stiefel 


According our contact at Microsoft Premier, it was already officially released from version 2010 released 10th November last year (2020).


You can try out yourself by downloading the officially released Click-to-run Office versions as I stated in my previous post using SqlDriverConnect (ODBC) or OleDispatchDriver (OLE).

Version 2012 has been been released since I wrote last time and the warning message still prevails. In one use case it also actually crashes in 



What leads me to think it's a bug is:
  * Works with ACE2010, Access 2013 Runtime and ACE2016
  * If the Access DB file is opened first with SqlDriverConnect and then opened with OleDispatchDriver, it doesn't display any AceCore warning.  Switch the opening order then the message shows up. The warning also shows up in some combination of calls SqlDriverConnect and CDatabase::OpenEx.


Updated 2021-01-26:

It is confirmed by Microsoft as being a bug in Office with built-in ACE and planned to be fixed in May/June.
Support case [Case #:23694309]  -  ACE access using both ODBC and ACE OLEDB drivers stopped working after upgrading Office 2016

We are discussing internally if it is required with a hotfix prior to the plan.



Regular Visitor

How is it that nearly a year since it was made available in all other versions this fix still hasn't been applied to the volume license version of 2019???


@sjamm This is a significant feature update, and perpetual/volume license versions don't get significant feature updates (that is one of their features).


This will be fixed in the 2021 volume license version.


Shane Groff

Access Engineering

Senior Member

@Shane Groff 
Can you please check if there was something broken with ACE accessibility in the recent updates. My application tries to use Access DB engine and fails with error "The operating system is not presently configured". Office 365 version is "16.0.14228.20204". Repair does not help. I am pretty sure it was working few days or may be weeks ago. And it is not the issue of my application - here is the sample *.vbs code which was working fine previously and now fails with the same error:

Dim DBEngine
Set DBEngine = CreateObject("DAO.DBEngine.120")
Call MsgBox("Access DB Engine - OK")
Set DBEngine = Nothing

Hi Konstantin

I'm using exactly the same version of Office 365 as you.

Perhaps I'm missing the point here but when I tested your vbs sample, I got this error:


Of course it works perfectly if I replace line 2 with:

Set DBEngine = CreateObject("Access.Application")





Senior Member

@isladogsHi, thank you for your reply

I am getting the same error as you in two cases:
1) when I run this vbs as x64 on machine with office x32 (basically to run these 4 lines as is)
2) when I force to run this code as x32 on machine with office x64. Here I use this trick to force to run it as x32. Full vbs text below.

In both cases that's the expected behaviour. x32 office should expose x32 dao which is not available from x64 and vice versa.

Error I am talking about - "The operating system is not presently configured" - happens when I try to connect DAO using the same x32/x64 bitness as Office installation. All this thread is dedicated to the breakthru that DAO/OLEDB connectiity should become available. And now instead of that connectivity I am getting endless occurence of that error.

CreateObject("Access.Application") - yes, it works fine, but that's not the subject of this discussion.

And here is the full vbs I use to foce x32 execution on x64 machine (sorry some formatting may be broken):

Call Force32bit

Dim DBEngine
Set DBEngine = CreateObject("DAO.DBEngine.120")
Call MsgBox("Access DB Engine - OK")
Set DBEngine = Nothing

Sub Force32bit()
Dim sWinDir, sSys64, sSys32, oShell
Set oShell = CreateObject("WScript.Shell")
sWinDir = oShell.ExpandEnvironmentStrings("%WinDir%")
With CreateObject("Scripting.FileSystemObject")
sSys64 = .BuildPath(sWinDir, "SysWOW64")
If Not .FolderExists(sSys64) Then Exit Sub
sSys32 = .BuildPath(sWinDir, "System32")
If sSys32 = WScript.Path Then
oShell.CurrentDirectory = sSys64
oShell.Run "wscript.exe " & Chr(34) & _
WScript.ScriptFullName & Chr(34), 1, False
End If
End With
End Sub

OK thanks. I'll study that code prperly later.


Out of interest are you aware that, contrary to widely expressed opinions, you can install 32-bit and 64-bit Office on the same machine in certain circumstances (without using a VM).

If interested, see 


Information about the regression for using DAO from non-Office applications is posted here:


The fix will be available in Current Channel on Aug 10, and is available now by updating to Version 2108 which you can get by switching to Current Channel (Preview) (this isn't yet indicated in the link above, but it will be updated soon).

Senior Member

@Shane Groffthis seems to be broken again. Today I've got an update v 2209 and now I am getting "Operating system not configured for the application" error on the code trying to access DAO. This can be reproduced with the same vbs I posted above.


This is a new issue in Version 2209.  The problem occurs when Ace is loaded as a DAO provider.


We will publish a page with information on the issue and the fix when it is available here: Fixes or workarounds for recent issues in Access (


In the meantime, if it works for you, you can work around this problem by loading a different Ace provider, such as the OLEDB provider before loading the DAO provider.

For example, if you put these lines in your VB script example (and have a database at the specified location), then problem will not occur:


Dim objConnection
Set objConnection = CreateObject("ADODB.Connection") "Provider=Microsoft.Ace.OLEDB.16.0;Data Source=c:\temp\Database1.accdb"




Senior Member

@Shane Groff  thank you for suggestion, but as I remember many years ago OLEDB did not support some specific data types like multivalue and attachments. Does Microsoft.Ace.OLEDB.16.0 support all Access data types and all protection methods (password/mdw)?

Senior Member

@k-semenenkov, if I understand Shane correctly, you don't have to actually use the OLEDB provider.  You just need to load the ACE-OLEDB provider first to prevent the error, after that you can just load the DAO provider and continue as you originally intended.

Senior Member

@Philipp Stiefelthanks a lot for clarification - it works.

@Shane Groff  sorry to misread you answer and please ignore my question about OLEDB provider.. the next question is how much time do you think it will take to deliver the fix?

I already have a workaround to use DB engine from Access.Application but it is really slow.


@k-semenenkov I can't commit to a specific date for a fix.  However, there will be an Office update on October 11 (Patch Tuesday), and it is likely that we will be able to have a fix in that release.

Version history
Last update:
‎Feb 11 2020 12:05 PM
Updated by: