首页 建站服务器相关Windows平台Win7 64位的IIS7使用ADO连接Access的方法

Win7 64位的IIS7使用ADO连接Access的方法

  由于64位的系统不支持ADO的Microsoft OLE DB Provider For Jet驱动程序,也不支持更早的Microsoft Access Driver (*.mdb)方式连接, 所以用于Access和Excel数据库的Microsoft OLE DB Provider For Jet在64位版本中不可用。也就是说如下两种连接字串在Win7 64位的IIS7上默认不能正常工作了:

“Provider=Microsoft.Jet.OLEDB.4.0;DataSource=” & Server.MapPath(“*.mdb”)

“Driver=Microsoft Access Driver (*.mdb);DBQ=” & Server.MapPath(“*.mdb”)

 

  要想解决这个问题  ,需要将IIS的运行环境设置为32位。方法很简单:

  1.运行→输入:inemgr打开IIS管理器

  2.找到程序对应的应用程序池,默认为DefaultAppPool,你也可以自己新建一个

  3.点击右侧“设置应用程序池的默认设置”选项,把”启用32位应用程序“改为”True“,完成

20150529073722

 

  对于早期64位Windows上的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位兼容模式运行。