Window2003 64位IIS连接ACCESS报错“Microsoft.Jet.OLEDB.4.0”问题
转自:http://www.2cto.com/os/201301/182743.html
由于64位操作系统不支持Microsoft OLE DB Provider for Jet驱动程序,也不支持更早的Microsoft Access Driver (*.mdb)方式连接。所以用于Access 和 Excel
数据库的 MicrosoftOLE DB Provider for Jet 在 64 位版本中不可用,也就是说,如下两种连接字符串都已经无法正常工作了: www.2cto.com
"Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&Server.mappath(db)
"driver=Microsoft AccessDriver (*.mdb);DBQ="&Server.MapPath(db)
既然这样,就只能使用一个办法,将IIS的运行环境设置为32位:
www.2cto.com
一、IIS6上的做法:
1.命令行键入:
cscript.exe %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
即设置IIS6允许32位程序运行在64位机器上
2.重新注册.net FrameWorks
%SYSTEMROOT%\Microsoft.NET\Framework\v2.0.50727\
aspnet_regiis.exe -i
3.完成之后,看Web服务扩展,应该会多出一个32位的asp.net将其设置为允许,缺点:这样会使整个IIS上的所有站点都以32位兼容方式运行 。
运行IIS6,看看是不是解决了。
将其设置为允许,缺点:整个IIS上的所有站点都以32位兼容方式运行
二、IIS7上的做法要简单很多:
应用程序池,高级设置-->允许32位应用程序设置成“True“即可。