“Microsoft.ACE.OLEDB.14.0”提供程序未在本地计算机上注册

时间:2011-03-31 13:46:35

标签: wpf oledb ms-jet-ace

我已经构建了一个小型WPF应用程序,它将读取XLS或XLSX文件并在数据网格中显示内容。我使用Microsoft.Jet.OLEDB.4.0提供程序的XLS方面工作。我正在努力解决XLSX方面的问题。我正在运行Windows 7(64位)并在我的计算机上安装了Office 2010(64位)。我在ODBC连接中看到了版本14和12版本的OLEDB。当我运行我的连接字符串时,它返回一个错误。我已经阅读了许多帖子而没有任何成功的答案,许多人指出应用程序运行的版本是x86。我已经尝试了14.0和12.0两个版本号都有相同的错误。

连接字符串:
Provider = Microsoft.ACE.OLEDB.14.0; Data Source = C:\ Users \ xxxxx \ Desktop \ test.xlsx; Extended Properties = \“Excel 14.0; HDR = Yes; IMEX = 1 \”

代码:

using (OleDbConnection connection = new OleDbConnection(GetConnectionString()))
{
    connection.Open();
}

错误:
“Microsoft.ACE.OLEDB.14.0”提供程序未在本地计算机上注册。

2 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。我正在使用Office 2010产品。

我必须下载Office 2007 Access数据库引擎才能让我的应用程序正常运行。

下载以下内容:
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=7554F536-8C28-4598-9B72-EF94E038C891&displaylang=en

答案 1 :(得分:0)

从我已经准备好处理这个问题开始,你可以在x64机器上注册32位和64位的不同驱动程序。

我见过的最明显的例子是从开始菜单中搜索ODBC管理,并在yo ugo时比较32位和64位列表以添加新的DSN