- Remove From My Forums
-
Question
-
I’m coding a ruby script that has to write data in an existing Access Database. With following code I don’t manage to make a connection with the database:
require 'win32ole' connection = WIN32OLE.new('ADODB.Connection') connection.Open('Provider=Microsoft.ACE.OLEDB.12.0;Data Source=d:ex1_student.mdb')Error: 800A0E7A — «Provider cannot be found. It may not be properly installed.»
Access 2010 32-bit and Windows 10 64-bit OS. I did find questions with the same error, but the solutions doesn’t seem to apply for me.
-
Edited by
Tuesday, September 1, 2015 12:25 PM
-
Edited by
System Requirements:
- Windows NT 4.0
- Windows 2000
- Windows XP (x86)
- Windows Server 2003 (x86)
- Windows Server 2008 (x86)
- Windows 7 (x86)
- Windows Server 2003 (x64)
- Windows Vista (x64)
- Windows 7 (x64)
- Windows Server 2008 (x64)
- Windows Server 2008 R2 (x64)
- Windows Server 2012 (x64)
The Problem:
When you attempt to connect to a Microsoft Access database using the ODBC provider Microsoft.Jet.OLEDB.4.0 you receive the error message:
ADODB.Connection error ‘800a0e7a’
Provider cannot be found. It may not be properly installed./path/file.asp, line ##
More Information:
For x64 Systems:
The Microsoft.Jet.OLEDB.4.0 is only available as a 32-bit (x86) module. In order to use it via IIS you must change the web site to run in a 32-bit application pool.
Under IIS 7.0, 7.5 or 8.0:
- Assuming that you will not want to use ASP .net, in the IIS console in the Application Pools section, create a no managed code, integrated application pool. If you do want to maintain access to ASP .net, select the framework version you require.
- Once created, in its advanced settings set “Enable 32-bit Applications” to true
- In the Basic Settings… for the web site entry you are experiencing the error on, change the Application Pool to the newly created 32-bit pool.
- Restart the web site
In most cases where the system is running under an x64 architecture, this should fix the problem.
For x86 and x64 Systems:
We had a server down for an entire day because of this one. It was either an attempt to fix a security database fault, or an update from Microsoft Update delivered in the April 2008 patch cycle, but after the reboot for the patches, none of the JET (Access) databases on the particular server, in any IIS web would operate.
I will simply cut to the fix for you in the beginning, to expedite your likely finding of a resolution to this problem. Something had caused the service provider for the Microsoft.Jet.OLEDB.4.0 provider to become unregistered. To fix the problem issue the following command from a Command Prompt or Run:
regsvr32.exe msjetoledb40.dll
You shouldn’t need to reboot to solve the problem, it didn’t in my case. However, if nothing happens do restart before progressing to the next step.
Additional Steps: Step 1
Reregister the components from MDAC, JET and ADO in their entirety. Simply copy the below into a BAT file and run it.
:: ADODB.Connection error '800a0e7a':: Provider cannot be found. It may not be properly installed.regsvr32.exe cfgmgr32.dll -sregsvr32.exe cliconfg.dll -sregsvr32.exe dasetupr.dll -sregsvr32.exe dbmsgnet.dll -sregsvr32.exe dbmsrpcn.dll -sregsvr32.exe dbnetlib.dll -sregsvr32.exe dbnmpntw.dll -sregsvr32.exe expsrv.dll -sregsvr32.exe msadce.dll -sregsvr32.exe msadcer.dll -sregsvr32.exe msadcf.dll -sregsvr32.exe msadcfr.dll -sregsvr32.exe msadco.dll -sregsvr32.exe msadcor.dll -sregsvr32.exe msadcs.dll -sregsvr32.exe msadds.dll -sregsvr32.exe msaddsr.dll -sregsvr32.exe msader15.dll -sregsvr32.exe msado15.dll -sregsvr32.exe msadomd.dll -sregsvr32.exe msador15.dll -sregsvr32.exe msADOX.dll -sregsvr32.exe msadrh15.dll -sregsvr32.exe mscpxl32.dll -sregsvr32.exe msdadc.dll -sregsvr32.exe msdadiag.dll -sregsvr32.exe msdaenum.dll -sregsvr32.exe msdaer.dll -sregsvr32.exe msdaora.dll -sregsvr32.exe msdaorar.dll -sregsvr32.exe MSDAOSP.dll -sregsvr32.exe msdaprsr.dll -sregsvr32.exe msdaprst.dll -sregsvr32.exe msdaps.dll -sregsvr32.exe msdarem.dll -sregsvr32.exe msdaremr.dll -sregsvr32.exe msdart.dll -sregsvr32.exe msdasc.dll -sregsvr32.exe msdasql.dll -sregsvr32.exe msdasqlr.dll -sregsvr32.exe msdatl3.dll -sregsvr32.exe msdatt.dll -sregsvr32.exe msdaurl.dll -sregsvr32.exe msdfmap.dll -sregsvr32.exe msjro.dll -sregsvr32.exe msjtes40.dll -sregsvr32.exe msorc32r.dll -sregsvr32.exe msorcl32.dll -sregsvr32.exe msvcirt.dll -sregsvr32.exe msvcrt.dll -sregsvr32.exe mswdat10.dll -sregsvr32.exe mswstr10.dll -sregsvr32.exe msxactps.dll -sregsvr32.exe msxml3.dll -sregsvr32.exe msxml3a.dll -sregsvr32.exe msxml3r.dll -sregsvr32.exe mtxdm.dll -sregsvr32.exe mtxoci.dll -sregsvr32.exe odbc16gt.dll -sregsvr32.exe ODBC32.dll -sregsvr32.exe ODBC32GT.dll -sregsvr32.exe odbcbcp.dll -sregsvr32.exe odbcconf.dll -sregsvr32.exe ODBCCP32.dll -sregsvr32.exe ODBCCR32.dll -sregsvr32.exe ODBCCU32.dll -sregsvr32.exe ODBCINT.dll -sregsvr32.exe ODBCTRAC.dll -sregsvr32.exe oledb32.dll -sregsvr32.exe oledb32a.dll -sregsvr32.exe oledb32r.dll -sregsvr32.exe setupapi.dll -sregsvr32.exe sqloledb.dll -sregsvr32.exe sqlsrv32.dll -sregsvr32.exe sqlunirl.dll -sregsvr32.exe sqlxmlx.dll -sregsvr32.exe vbajet32.dll -s:: OLEdBregsvr32.exe %SystemRoot%System32msjetoledb40.dll:: Jetregsvr32.exe %SystemDrive%Program FilesCommon FilesMicrosoft SharedDAOdao360.dll -sregsvr32.exe %SystemRoot%System32expsrv.dll -sregsvr32.exe %SystemRoot%System32msexch40.dll -sregsvr32.exe %SystemRoot%System32msexcl40.dll -sregsvr32.exe %SystemRoot%System32jet500.dll -sregsvr32.exe %SystemRoot%System32msjet35.dll -sregsvr32.exe %SystemRoot%System32msjet40.dll -sregsvr32.exe %SystemRoot%System32msjetol1.dll -sregsvr32.exe %SystemRoot%System32msjint40.dll -sregsvr32.exe %SystemRoot%System32msjter40.dll -sregsvr32.exe %SystemRoot%System32msjtes40.dll -sregsvr32.exe %SystemRoot%System32msltus40.dll -sregsvr32.exe %SystemRoot%System32mspbde40.dll -sregsvr32.exe %SystemRoot%System32msrd2x40.dll -sregsvr32.exe %SystemRoot%System32msrd3x40.dll -sregsvr32.exe %SystemRoot%System32msrepl40.dll -sregsvr32.exe %SystemRoot%System32mstext40.dll -sregsvr32.exe %SystemRoot%System32mswdat10.dll -sregsvr32.exe %SystemRoot%System32mswstr10.dll -sregsvr32.exe %SystemRoot%System32msxbde40.dll -sregsvr32.exe %SystemRoot%System32spmsg.dll -sregsvr32.exe %SystemRoot%System32vbajet32.dll -s:: ADOregsvr32.exe %SystemDrive%Program FilesCommon FilesSystemadomsader15.dll -sregsvr32.exe %SystemDrive%Program FilesCommon FilesSystemadomsado15.dll -sregsvr32.exe %SystemDrive%Program FilesCommon FilesSystemadomsadomd.dll -sregsvr32.exe %SystemDrive%Program FilesCommon FilesSystemadomsador15.dll -sregsvr32.exe %SystemDrive%Program FilesCommon FilesSystemadomsadox.dll -sregsvr32.exe %SystemDrive%Program FilesCommon FilesSystemadomsadrh15.dll -sregsvr32.exe %SystemDrive%Program FilesCommon FilesSystemadomsjro.dll -s
Additional Steps: Step 2
Reinstall MDAC 2.8 SP1 (Windows XP SP1 or below only). You will need to perform some registry modifications before you can reinstall MDAC as it is a protected system module.
- Open Regedit
- Navigate to:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionSetupExceptionComponents - Look through each class ID for the following friendly name values. Delete the Class ID containing the matching friendly names:
Microsoft MDAC Response Files
Microsoft MDAC Setup Files
Microsoft SQL Server ODBC Drivers
Microsoft SQL Server Net Libs
Microsoft SQL Server OLEDB Provider
WebData Setup Exception Package
Mdac 2.8 Exception Package - Download and reinstall MDAC 2.8 SP1 from Microsoft which should reinstall in full.
- Remove From My Forums
-
Question
-
I have a ASP and a ASP.net(2.0) application running under IIS on a windows 2003 32 bit OS. Connections to our SQL server 2005 databases works fine from ASP.Net applications. I can also connect using SQL query analyzer/ enterprise management studio clients which is installed on the server.
But we get ADO.DB connection error from our ASP web pages and VB 6 Exe applications.
ADODB.Connection error ‘800a0e7a’ Provider cannot be found. It may not be properly installed.I tried both these connection strings from ASP looks like this :
DRIVER=SQL Server;UID=<user>;PWD=<pwd>;Address=Server,port;DATABASE=mydb;AnsiNPW=No;SERVER=Server,port
Provider=SQLOLEDB;Data Source=server,port;Initial Catalog=mydb;User Id=<user>;Password=<pwd>;
I also tried creating a file dsn which tests out fine but when I use it in my connection string, it throws the same error. All the suggestions I checked online say I need to reinsall mdac 2.8 sp2. Tried that already but no luck. Help really appreciated.P.S: This issue is happening only on few of our windows 2003 production servers. On some of the other servers QA/SIT (windows 2003) and our desktop machines (with XP) the connections works fine. Configuration is identical and most of these servers were built with same standard list of softwares.
Also, these windows 2003 servers are outside our DMZ and the firewall has been opened to SQL servers and connectivity works fine with sql management studio/ query analyzer and SQL.net providers in asp.net apps.
Thx.
ycmahesh
- Remove From My Forums
-
Question
-
I have a ASP and a ASP.net(2.0) application running under IIS on a windows 2003 32 bit OS. Connections to our SQL server 2005 databases works fine from ASP.Net applications. I can also connect using SQL query analyzer/ enterprise management studio clients which is installed on the server.
But we get ADO.DB connection error from our ASP web pages and VB 6 Exe applications.
ADODB.Connection error ‘800a0e7a’ Provider cannot be found. It may not be properly installed.I tried both these connection strings from ASP looks like this :
DRIVER=SQL Server;UID=<user>;PWD=<pwd>;Address=Server,port;DATABASE=mydb;AnsiNPW=No;SERVER=Server,port
Provider=SQLOLEDB;Data Source=server,port;Initial Catalog=mydb;User Id=<user>;Password=<pwd>;
I also tried creating a file dsn which tests out fine but when I use it in my connection string, it throws the same error. All the suggestions I checked online say I need to reinsall mdac 2.8 sp2. Tried that already but no luck. Help really appreciated.P.S: This issue is happening only on few of our windows 2003 production servers. On some of the other servers QA/SIT (windows 2003) and our desktop machines (with XP) the connections works fine. Configuration is identical and most of these servers were built with same standard list of softwares.
Also, these windows 2003 servers are outside our DMZ and the firewall has been opened to SQL servers and connectivity works fine with sql management studio/ query analyzer and SQL.net providers in asp.net apps.
Thx.
ycmahesh
Итак, я возвращаюсь к проекту, который я создал в колледже, поэтому я могу перенести его на PHP. Я закодировал его в ASP Classic.
Я нахожусь в Windows 8 и запускаю Access 2013.
В настоящее время я получаю следующую ошибку
ADODB.Connection error ‘800a0e7a’
Поставщик не найден. Он может быть неправильно установлен.
/PROJECT!Better/verifyuser.asp, строка 11
и это мой код строки подключения.
Dim vPath, pPath, Conn
vPath = ".dbComic.accdb"
pPath = Server.MapPath( vPath )
objConn = "PROVIDER=Microsoft.ACE.OLEDB.12.0;DATA SOURCE=" & pPath & ";"
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open objConn
любая помощь, которую вы можете предоставить, была бы потрясающей!
edit: У меня уже есть 32-битные приложения с поддержкой в IIS Activated
Ответ 1
Проверьте пул приложений на сайте в IIS/пулы приложений/YourPoolHere/Дополнительные параметры:
1) Managed Pipeline Mode : Classic
2) Advanced / Enable 32-Bit Applications: True
Ответ 2
Вы должны использовать поставщика, доступного на вашем компьютере.
- Панель управления Goto
- Перейти к инструментам администратора
- Перейти к источникам данных (ODBC)
- Перейдите на вкладку «Драйверы».
- Вы видите что-то, называемое «собственный клиент SQL Server»?

См. прикрепленный снимок экрана. Здесь мое предложение будет SQLNCLI11.0
Ответ 3
У меня такая же проблема, и она была решена путем установки клиента Oracle 11g на моем компьютере.
Я не установил для него никаких эксклюзионных драйверов. Я использую windows7 с 64 бит. Интересно, когда я перехожу в путь «Пуск» > «Настройки» > «Панель управления» > «Администрирование» > «Источники данных» (ODBC) > «Драйверы». Я нашел в нем только SQL-сервер

Ответ 4
У вас установлен драйвер? Если вы перейдете в меню «Пуск» > «Настройки» > «Панель управления» > «Администрирование» и нажмите «Источники данных», выберите вкладку Драйверы, где должна быть зарегистрирована информация о вашем драйвере.
Невозможно упростить простое подключение DSN для тестирования.
Конечно, вы можете определить несколько строк подключения и настроить «режим» для работы на разных машинах.
Также есть ConnectionStrings.com.
— EDIT —
Чтобы это сделать, я нашел этот поток на другом сайте.
Ответ 5
Несколько предложений
Драйвер ACE по умолчанию не установлен. Это также 64-битный драйвер, поэтому стоит потратить 32bit в вашем пуле приложений. Я знаю, что 64-разрядные драйверы не работают, когда включена 32-разрядная (например, фильтр ISAPI, который соединяет IIS с Tomcat).
Более старый драйвер JET — 32 бит. Он включен по умолчанию. Если вы могли бы сохранить копию своей базы данных в виде файла .mdb, то использование драйвера JET может быть обходным способом
Ответ 6
установите https://www.microsoft.com/en-us/download/details.aspx?id=13255
установите 32-разрядную версию независимо от того, являетесь ли вы 64-разрядным и разрешите 32-разрядные приложения в пуле приложений