itsathere Ответов: 7

Ошибка сервера: поставщик Microsoft.ACE.OLEDB.12.0 не зарегистрирован на локальном компьютере.


Локально решение работает нормально, но на сервере загрузки, когда пользователь пытается импортировать файл excel, а затем при нажатии кнопки появляется ошибка, как

"Поставщик Microsoft.ACE.OLEDB.12.0 не зарегистрирован на локальном компьютере. "


Я перепробовал много решений в Google search, но никто не работает.Если у кого-то есть идея, пожалуйста, ответьте.

Спасибо.

Mehmet Uluağaç

'Microsoft.ACE.OLEDB.12.0 'замените на' Microsoft.Jet.OLEDB.12.0 ' и 12 не следует использовать 4 следует использовать. и это должен быть формат excel xls от 97 до 03.

adriancs

Вы пытаетесь читать документы Microsoft Excel?

adriancs

Попробуйте скачать "Microsoft Access Database Engine 2010 Redistributable", если ваш проект все еще не может найти его, попробуйте изменить свой проект на .NET 4.0, а не 4.5

Hrishikesh

Это веб-приложение или приложение windows?
Является ли сервер общим сервером или частным сервером?

Huzaifa Abbas

Привет, Брат!

Эта же проблема и со мной. У меня есть общий хостинг мой и хостинг-провайдер сказал, что microsoft 12 не поддерживается на общем хостинге.

Пожалуйста помогите его срочно

Извините за мой английский

7 Ответов

Рейтинг:
2

koolprasadd

Если вы запускаете свой код, содержащий объект OLEDB, на 64-битной машине, вы получите эту ошибку, просто измените компиляцию на процессор x86, а затем проверьте код, это решит вашу проблему


Рейтинг:
1

Member 10549697

Это просто потому, что ваш сервер не может найти Microsoft Ace.вы должны изменить свой код.хотя вы можете скачать его и установить, но если вы не хотите этого делать, у вас есть альтернативный способ сделать это.что именно вы пытаетесь сделать?вы пытаетесь работать на листе Excel?


[no name]

На этот вопрос уже достаточно дан ответ. Нет никакой реальной причины для того, чтобы вы публиковали свои комментарии в качестве другого решения.

Рейтинг:
1

Sneha Bisht

Установите Office в требуемую машину.

и используйте строку подключения в соответствии с расширением файла

ЭКС.

Aconn = новый объект oledbconnection("поставщик=Майкрософт.Туз.Oledb для.12.0; " + "источника данных=" + getfilepath + ";сохранять сведения о безопасности=false в;");

или

Aconn = новый объект oledbconnection("поставщик=Майкрософт.Туз.Oledb для.4.0; " + "источника данных=" + getfilepath + ";сохранять сведения о безопасности=false в;");


Рейтинг:
0

Thomas Nielsen - getCore

Мы находимся на 64-битном сервере windows? если да, то настроен ли пул приложений на включение 32-битного?
Иногда так и было.

Если нет, то проверьте это решение
http://www.connectionstrings.com/the-microsoft-ace-oledb-12-0-provider-is-not-registered-on-the-local-machine/[^]

Похоже, что "новая" версия распространяемого пакета Microsoft Access Database Engine 2010 имеет некоторые проблемы, отсутствующие в исходном выпуске 2007 года.


Рейтинг:
0

OriginalGriff

Установить двигатель Асе БД на удаленной машине...

Или, если удаленная машина 64-разрядная, измените свое приложение только на 32-разрядное. Нет версии ACE, которая работает в 64-битном режиме, поэтому доступ к ней могут получить только 32-битные приложения.


itsathere

В той же машине работает локально, но не с сервера.Я изменил наше приложение на 32 битное, но все еще имею ту же ошибку

Рейтинг:
0

Navid Khalili

Вы можете скачать его по ссылке ниже:
http://www.microsoft.com/en-us/download/details.aspx?id=13255[^]

затем установите его на удаленную машину.


Рейтинг:
0

Dhulagouda

Проблема связана с тем, что приложение не в состоянии найти требуемое обеспечение.

Установив Ace engine, вы решите эту проблему.