2015-05-29 4 views
-2

Я получаю следующее сообщение об ошибке«Microsoft.ACE.OLEDB.12.0» поставщик не зарегистрирован на локальном компьютере в MS Office 2013

«Поставщик„Microsoft.ACE.OLEDB.12.0“ не зарегистрирован на локальной машине ».

при чтении данных из файла Excel с использованием OLEDB Data Reader.

Не работает как в 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); 
+0

https: // www.microsoft.com/en-us/download/details.aspx?id=13255 –

ответ

0

Вы должны изменить Solution Platform от "Any CPU" до "x86". Шаги приведены ниже:

  1. правой кнопкой мыши на файле решения в обозревателе решений

  2. Нажмите на Configuration Manager.

  3. Нажмите на активную платформу. Выбросьте, если x86 уже существует, выберите это, а затем нажмите «Создать».

  4. Выберите x86 из новой платформы выпадающего списка:

  5. Скомпилировать и запустить приложение.

Если вы все еще сталкиваетесь с проблемой, попробуйте установить Office System Driver. с последующей сайта

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

Смежные вопросы