2014-02-13 1 views
0

я получаю этот вопросНекоторая проблема с поставщиком «Microsoft.ACE.OLEDB.12.0» не зарегистрирована на локальном компьютере ».

Некоторые вопрос о «провайдер„Microsoft.ACE.OLEDB.12.0“не зарегистрирован на локальном компьютере ..

Я уже установлен Microsoft Access Database Engine 2010 Redistributable и 2007 один на серверной машине, на которой есть iis и SQL-сервер. Когда я отлаживаю VS на сервере, нет ошибки, и она работает хорошо, хотя когда я пытаюсь импортировать excel других ПК через интернет с протоколом HTTP он возвращает ошибку, если я попробую его на сервере через http-страницу, он возвращает "The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine." эта ошибка.

Я могу использовать его только для отладки и уже иметь доступ к базе данных, как я могу ее исправить?

Вот мои ConnectionStrings в веб-конфигурации

<add name ="Excel03ConString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties='Excel 8.0;HDR={1}'"/> 
<add name ="Excel07ConString" connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties='Excel 12.0;HDR={1}'"/> 

пс: Я получил ошибку как oledb.4.0 и oledb.12.0

+1

Вы на x86 или x64? Поставщик OLEDB не работает на 64 бит. Вы можете попробовать перекомпилировать свой код для x86 и посмотреть, поможет ли это. –

+0

@JakobChristensen сервер 64 бит. Как я могу узнать, что проект работает на x64 или нет, и как я могу изменить его на x86, и если я изменюсь, будет ли он исцелен, это будет любая проблема? // edit: он отлично работает при отладке в VS, могу ли я его изменить в IIS или VS? – user3305037

+0

В VS проверьте свою целевую платформу для своего проекта. Смотрите это изображение: http://1.bp.blogspot.com/-ocoFqAWeR-A/TajKY72tGUI/AAAAAAAAACg/UAqRzM06JOU/s1600/project_settings.png. Вы можете установить целевую платформу для x86. –

ответ

1

На IIS7 и выше, я полагаю, вы можете включить 32-битным пула приложений.

Открыть inetmgr и перейти в пулы приложений. Для пула приложений, который использует ваш веб-сайт, нажмите «Дополнительные настройки» в панели справа.

Найдите параметр «Включить 32-разрядные приложения» и измените значение на «True».

Вместо изменения пула приложений ASP.NET по умолчанию вы должны создать свой собственный пул приложений для своего веб-сайта.

enter image description here

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