点击开始——运行,输入cmd,回车,打开命令行窗口。
输入:
cscript c:\inetpub\adminscripts\adsutil.vbs set w3svc/apppools/enable32bitapponwin64 1
然后回车执行。
我也在win2008 R2 X64寻求解决方法,研究两天了,不过有点进展,供参考。1、实验成功的方法-用odbc数据源访问。
在管理工具-数据源(odbc)中,配置一个系统数据源demo_mdb 。
在asp中
<%
set conn1=Server.CreateObject("ADODB.Connection")
conn1.open "demo_mdb"
response.Write "<br>连接ODBC数据源demo_mdb成功"
%>
就可以连接成功了。
至于Microsoft Access Driver (*.mdb,*.accdb)驱动的安装,估计是我安装了office2010自动安装的。
我在另外一台机器上安装了office2007也有这个驱动程序,郁闷的是没有 Microsoft Access Driver (*.mdb)这个驱动,估计是以下第二种方法不能访问的原因。
2、用文件访问,yea,终于成功了,连接池也不用开32位了。
conn2.Open "driver={Microsoft Access Driver (*.mdb, *.accdb)}dbq=" &Server.MapPath("demo.mdb")
--原理:还是通过Access Connectivity Engine(ACE)访问的,office2007以后自带的,我的office是64位的。
---下面的不行,看看有什么区别,哈哈,发现了算你厉害。
还是不行。
conn2.Open "driver={Microsoft Access Driver (*.mdb,*.accdb)}dbq='" &Server.MapPath("demo.mdb")
连接池允许32位了,也不行。
原因:64位 *** 作系统不支持Microsoft OLE DB Provider for Jet驱动程序,也不支持更早的Microsoft Access Driver (*.mdb)方式连接。
重新注册odbc驱动:也不行
odbcconf.exe INSTALLDRIVER "Microsoft Access Driver (*.mdb)|Driver=odbcjt32.dll|Setup=odbcjt32.dll|APILevel=1|ConnectFunctions=YYN|DriverODBCVer=02.50|FileUsage=2|FileExtns=*.mdb|SQLLevel=0||"
采纳我吧,实际测试的结果分享给你了,打字也挺累的。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)