未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序。

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/cplvfx/article/details/80355234

未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序。

说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 

异常详细信息: System.InvalidOperationException: 未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序。

源错误: 

执行当前 Web 请求期间生成了未经处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。

堆栈跟踪: 

[InvalidOperationException: 未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序。]
   System.Data.OleDb.OleDbServicesWrapper.GetDataSource(OleDbConnectionString constr, DataSourceWrapper& datasrcWrapper) +258
   System.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionString constr, OleDbConnection connection) +497
   System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject) +100
   System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup, DbConnectionOptions userOptions) +57
   System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection) +1143
   System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) +314
   System.Data.ProviderBase.DbConnectionInternal.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) +23
   System.Data.OleDb.OleDbConnection.Open() +52
  
 System.Web.UI.WebControls.Button.OnClick(EventArgs e) +11764877
   System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +150
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1665


解决方案:

在对应的 IIS 应用程序池中,“设置应用程序池默认属性”/“常规”/"启用32位应用程序",设置为 true。

估计是Windows 里已经有了 Microsoft.Jet.OLEDB.4.0,32位的,但是默认情况下应用程序池不启用32位程序,所以显示没有安装“Microsoft.Jet.OLEDB.4.0”。

此方法仅适用于windows系统是64位的


对于32位windows出现的这个错误

1.Microsoft.Jet.OLEDB.4.0不要写成Miscrosoft.Jet.OLEDB.4.0,;
2.Data Source不要写成“Data Sourse”,
3.检查是否安装了Office
4.重新安装注册MDAC28.exe (一般你的安装目录里有或者到微软的官方网站上下) 


阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页