【发布时间】:2018-10-14 02:06:04
【问题描述】:
我正在尝试跟进我的学校项目,并且完全按照他们的建议设置 IIS,包括允许 32 位应用程序。但是,尽管从头开始在 2 台不同的计算机上尝试此操作,但它仍然无法正常工作。我收到错误消息:
用于 ODBC 驱动程序的 Microsoft OLE DB 提供程序错误“80004005”
[Microsoft][ODBC Driver Manager] 未找到数据源名称且未指定默认驱动程序
/LEGO STORE/Program.asp,第 17 行
我的代码如下:
<%
dim con, rs, sql
Set con = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
con.open("DRIVER={Microsoft Access Driver (*.mdb, *.accdb)}; DBQ=" & Server.MapPath("Lego.accdb"))
sql = "SELECT * FROM Table1"
rs.Open sql, con
%>
我不知道为什么它不工作,在修复之前我无法继续我的项目。这些文件是从我的计算机托管的,而不是使用单独的服务器。我检查了现有的解决方案,但它们是针对不同版本的 IIS 的,我不知道它们有何不同。
【问题讨论】:
-
该 8004 消息确实表明位大小不匹配。我会考虑在与 Web 服务器相同的机器上安装用于 Access 的 x64 驱动程序。当您启用 x32 应用程序时,您的进程中代码仍可能以 x64 运行。另一个解决方案是安装 + 运行 x32 IIS。既然你有一个工作设置,我会安装访问 x64 驱动程序。
标签: ms-access asp-classic iis-10