【问题标题】:Trying to connect to excel 2010 doesn't work尝试连接到 excel 2010 不起作用
【发布时间】:2012-11-01 21:35:15
【问题描述】:

我得到了这个例外: 'Microsoft.ACE.OLEDB.12.0' 提供程序未在本地计算机上注册。

我试图用 OleDBConnection 连接 Excel 2010 文件。我有 Windows 7 64 位和 Office 2010 32 位。

我尝试安装 Microsoft Access Database Engine 2010 Redistributable,建议来自: The 'Microsoft.ACE.OLEDB.12.0' provider is not registered in the local machine

我也试过这个建议: http://social.msdn.microsoft.com/Forums/en-US/vstsdb/thread/1d5c04c7-157f-4955-a14b-41d912d50a64

其中任何一个都不适合我。有人帮忙吗?

这是我的代码: string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=d:\Sample.xlsx;Mode=Share Deny Write;Extended Properties=\"HDR=YES;\";Jet OLEDB:Engine Type=37" ;

OleDbConnection connection = new OleDbConnection(connectionString);

try
{
    connection.Open();

    OleDbCommand command = new OleDbCommand("SELECT * FROM [Sheet1$]", connection);
    OleDbDataAdapter adapter = new OleDbDataAdapter();
    adapter.SelectCommand = command;

    DataSet ds = new DataSet();
    adapter.Fill(ds);

    ds.Tables[0].Rows.Count.Dump();

}
catch (Exception)
{            
    throw;
}
finally
{
    connection.Close();
}

【问题讨论】:

    标签: c# excel-2010


    【解决方案1】:

    这里是关于这个错误的讨论,请参考它,让我知道它是否适合你。

    HOW TO FIX

    最好的问候

    先尝试安装这个:http://www.microsoft.com/download/en/details.aspx?id=13255

    试试下面的方法:

    注意:这确实适用于 office 2010,即使它适用于 2007 office

    1. 下载并安装:Download here

    2. 在VS中点击添加数据源,按照向导操作。

    【讨论】:

    • 这个信息来自我提到的第二篇文章。它对我不起作用!
    • 哎呀..我没有看到。让我看看能不能得到什么。
    • @Meidi,你能检查这个链接吗stackoverflow.com/questions/11179905/…
    • 我也安装了那个。它对我不起作用。事实上,这是我安装的第一个组件,但它不起作用。然后我尝试了2007,也没有工作。
    • 你觉得32位和64位版本会不会有问题?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多