2012-05-25 75 views
0

我有桌面應用程序,它是在C#和MS Access數據庫(.ACCDB)錯誤:「Microsoft.Ace.OLEDB.12.0」提供者未註冊在本地計算機上

我已經安裝了「女士訪問引擎「,但我面臨 」錯誤:「Microsoft.Ace.OLEDB.12.0」提供程序未在本地計算機上註冊「錯誤。

+0

1)您的應用程序是否具有相同的「位」(即32/64位)版本的驅動程序? 2)嘗試安裝後重新啓動,它不在說明書中,但我必須在多臺機器上進行操作才能使其工作。 –

+0

您是否看到http://social.msdn.microsoft.com/Forums/en-US/vstsdb/thread/1d5c04c7-157f-4955-a14b-41d912d50a64? – Fionnuala

回答

0

您需要檢查的第一件事是您的應用程序的構建配置。

  • 如果你有建項目下x86平臺,那麼爲了 解決您發出您應在 機器上安裝以下軟件包:

    1. 爲了使用'Microsoft.ACE.OLEDB.12.0'提供商必須 安裝Microsoft Access數據庫引擎2010可再發行組件 首先,此安裝位於: http://www.microsoft.com/download/en/details.aspx?id=13255

      安裝之後擁有完整,嘗試運行你的應用程序,如果這 解決了很大的問題,如果沒有,繼續執行步驟2

    2. 這一步是一種原因不明的解決辦法,它適用於辦公室 2010 ,儘管它是Office 2007的數據連通性組件。我不太清楚爲什麼它可以工作,但它確實可行,而且幾乎在所有情況下都可以使用。您需要安裝2007 Office System Driver:數據連接組件,此安裝位於: http://www.microsoft.com/download/en/confirmation.aspx?id=23734

      安裝完成後,請嘗試運行您的應用程序,這應該可以解決問題。

  • 如果你想運行在x64或AnyCPU 平臺構建的應用程序,我建議首先驗證它運行正常 x86平臺下。如果它不在該平臺下運行,請執行第一部分中的步驟並驗證其是否按預期運行。

    我看過的MS訪問驅動程序包括OLEDB數據庫 驅動程序只能在x86平臺上,是 是x64或AnyCPU平臺下兼容。但這似乎是不真實的。 I 驗證了我的應用程序在構建x86時正在運行,然後我使用被動標誌I 安裝了Access數據庫引擎。

    1. 首先下載文件在本地你可以下載安裝 這裏:http://www.microsoft.com/en-us/download/details.aspx?id=13255
    2. 使用命令提示符用「/被動」標誌安裝。 在 命令提示符下運行以下命令: 'AccessDatabaseEngine_x64。EXE /被動」

    經過這2個步驟,我設法建設 64或AnyCPU構建配置後運行我的應用程序。這似乎解決了我的問題。

注意:步驟的順序似乎有差別,所以請按照相應的步驟操作。

相關問題