& # 39; Microsoft.ACE.OLEDB.12.0& # 39;在MS office 2013中,本地机器

本文关键字:2013 机器 office ACE Microsoft OLEDB MS | 更新日期: 2023-09-27 17:51:07

我得到以下错误

"没有在本地机器上注册'Microsoft.ACE.OLEDB.12.0'提供程序。"

,而读取数据从Excel文件使用OLEDB数据阅读器。

在32位和64位机器上都不能工作。目前我的机器安装了MS office 2013和VS 2010。

string Connection = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + fileName + ";Extended Properties='"Excel 12.0;HDR=YES;IMEX=1;MAXSCANROWS=15;READONLY=FALSE'"";
OleDbConnection con = new OleDbConnection(Connection);
OleDbCommand command = new OleDbCommand();
DataSet ds = new DataSet();
command.CommandText = sql;
command.CommandType = CommandType.Text;
command.Connection = con;
command.Connection.Open();
OleDbDataReader dr = command.ExecuteReader(CommandBehavior.CloseConnection);

& # 39; Microsoft.ACE.OLEDB.12.0& # 39;在MS office 2013中,本地机器

需要将解决方案平台从"Any CPU"更改为"x86"。步骤如下:

  1. 右键单击解决方案资源管理器中的解决方案文件

  2. 点击配置管理器

  3. 点击活动平台下拉菜单,如果x86已经存在,那么选择它,否则点击新建

  4. 从新平台下拉菜单中选择x86:

  5. 编译并运行应用程序

如果您仍然面临这个问题,然后尝试安装办公系统驱动程序。 from follow site

http://www.microsoft.com/en-us/download/details.aspx?id=23734

请参考以下链接获取可能的解决方案:

在64位Windows和64位Office(2010、2013)环境中,有许多关于此错误的报告…

…尝试使用2007 Office系统驱动程序:数据连接组件