IIS7运行ASP时出现ADODB.Connection 800a0e7a错误的解决方法

628人参与 |分类: 站长百科|时间: 2018年08月02日

今天帮客户调试一个网站,网站程序比较老了,是用ASP+MSSQL的,客户的需求是增加手机访问的能够适应不同分辨率,主要是现在大部分的流量都是来自于移动端。这也是大势所趋。

客户直接将程序发给我之后,我在本地的电脑进行调试,我在自己的Windows 7 64位系统安装了IIS7,可就是死活运行不了,总是出现ADODB.Connection错误“800a0e7a”,由于我丢弃ASP程序很多年了,一直习惯用Centos,环境之类的也都是用习惯了PHP的环境,所以对这块还真的有点陌生了。起初以为是代码上的原因,可是客户现在的网站是没有问题,只是自己这边没有导入数据,于是我写了一段最简单的连接数据库的代码,还是出错,研究半天终于找到了解决方法,拿来分享。

原因是因为在64位Windows7操作系统中,IIS7应用程序池默认没有启用32位应用程序,而我们连接ACCESS数据库的驱动程序Microsoft.Jet.OLEDB.4.0是32位的,所以就出错了,要想正常运行,只需启用32位应用程序即可。方法如下:

1、打开IIS信息服务管理器,在最右边的窗口中点击“查看应用程序池”链接

2、在出现的窗口中点击“设置应用程序池默认设置”链接,在弹出的窗口中将“常规”中的“启用32位应用程序”设置为“True”即可

64001.jpg

由上面可以推测到如果有别的错误,也可能是因为32位程序运行在64的程序池造成的,如ISAPI的dll 等如果是32位的,也要按上面修改才行。我是经过上面的步骤就解决了。希望能够帮到遇到同样问题的朋友。


来源:陈德馨博客(微信/QQ号:35435164),转载请保留出处和链接!

地址: