無法在 Office 隨選即用應用程式外部使用 Access ODBC、OLEDB 或 DAO 介面
徵狀
當您嘗試為 Microsoft Access 在數據源 ODBC 系統管理員中提供的驅動程式建立 ODBC DSN 時,嘗試會失敗。 如果您使用隨選即用 (C2R) 安裝 Office,但未在 Office 虛擬化泡泡之外公開 Access 資料庫引擎,就會發生此問題。 視 Office 的版本而定,當您嘗試此作業時,可能會遇到下列任何問題:
ACEODBC.DLL 提供的 ODBC 驅動程式不會列在 [ 選取驅動 程式] 對話框中。
您會收到「作業系統目前未設定為執行此應用程式」錯誤訊息。
您會收到「無法載入 odbcji32.dll」錯誤訊息。
您會收到「此使用者 DSN 的驅動程式不存在。 它只能與顯示 N/A 的平臺一起移除「錯誤訊息」。
受影響的驅動程式:
- Microsoft Access Driver (*.mdb, *.accdb)
- Microsoft Access Text Driver (*.txt, *.csv)
- Microsoft Excel Driver (*.xls、*.xlsx、*.xlsm、*.xlsb)
此外,如果您嘗試從外部應用程式定義OLEDB連線 (使用 Microsoft.ACE.OLEDB.12.0 或 Microsoft.ACE.OLEDB.16.0 OLEDB 提供者在 Office) 外部執行的連線,當您嘗試連線到提供者時,會遇到「找不到提供者」錯誤。
原因
Office 的隨選即用安裝會在本機操作系統上的隔離虛擬環境中執行。 Office 外部的某些應用程式可能不知道要在隔離環境中尋找安裝的位置。
解決方案
從 Microsoft 365 Apps 企業版 2009 開始,已完成將 ACE 從 C2R 虛擬化泡泡中中斷 的工作,讓 Office 外部的應用程式能夠在 C2R 安裝內找到 Access 資料庫引擎所提供的 ODBC、OLEDB 和 DAO 介面。
使用下表瞭解是否需要其他元件才能存取您環境中的這些介面:
目前的 Office 安裝 | 需要其他元件 | 建議的額外安裝 |
---|---|---|
Microsoft 365 Apps 企業版、Office 2016/2019/2021 消費者版本 2009 或更新版本 | 否 | - |
Office LTSC 2021 (大量授權) | 否 | - |
Office 2016/2019 專業增強版 C2R (大量授權) | 是 | 升級至 Office LTSC 2021 (大量授權) 或安裝 Microsoft Access 2013 運行時間 |
Office 2010/2013/2016 MSI | 否 | - |
無 Office 安裝 | 是 | Microsoft 365 Access Runtime |
注意事項
- 不建議安裝 Microsoft Access Database Engine 2016 可轉散發 套件,因為 Access Database Engine 2016 和 Microsoft 365 Apps 使用相同的主要版本標識符, (16.0) 可能會導致非預期的行為。 如果偵測到此案例,Office 並存偵測也會防止安裝繼續進行。
建立 ODBC 連線的詳細資訊
Office 的所有隨選即用實例都無法從 Office 應用程式或數據源 ODBC 系統管理員建立機器/系統數據源名稱。