0

An application crashes connecting to an Microsoft Access database when using the latest Office 365 build: E_UNEXPECTED(0x8000FFFF)

Environment:

  • Office 365 Version 2001 (Build 12430.20184) and later
  • .NET 4.6
  • OLEDB provider
  • Access 2007 / 2010 databases

.NET component

<ComVisible(True)>
Public Sub TestOpenOLEDB(databasePath As String)
    Dim ConnectionString = $"Provider=Microsoft.ACE.OLEDB.12.0; Data Source={databasePath}"
    Dim cn As New OleDbConnection()
    cn.ConnectionString = ConnectionString
    cn.Open()
    cn.Close()
End Sub

Exception on cn.Open():

E_UNEXPECTED(0x8000FFFF) System.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionString constr, OleDbConnection connection) bei System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject) bei System.Data.ProviderBase.DbConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions) bei System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup, DbConnectionOptions userOptions) bei System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection) bei System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource1 retry, DbConnectionOptions userOptions) bei System.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) bei System.Data.ProviderBase.DbConnectionInternal.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) bei System.Data.OleDb.OleDbConnection.Open()

There are no crashes

  • when using direct DAO access
  • when using ODBC driver instead the OLEDB provider
  • after rolling back to an older Office 365 Build
Pᴇʜ
  • 56,719
  • 10
  • 49
  • 73
rainan16
  • 44
  • 7
  • See if this might help. https://stackoverflow.com/questions/55756639/oledb-using-32bit-instead-of-64bit/55756667#55756667 – Mary Mar 05 '20 at 10:27
  • @Mary Unfortunately, that doesn't help - application and office installation is already _x86 32-bit_. – rainan16 Mar 05 '20 at 11:52
  • Forgot to mention: A test application containing just the connection code crashes on the second attempt. The very first connection to the database works without problems. – rainan16 Mar 05 '20 at 11:58

0 Answers0