建站常识

win10系统 IIS报错 错误 '80004005'

发布时间 | 2017/9/28  点击 | 

最近在把电脑系统升级到windows10过程中,安装IIS一切正常,在调试asp网站过程中发现报错”Microsoft JET Database Engine 错误 '80004005'“,但是不调用数据库的程序代码正常打开,想可能是Fat32可能的原因,上网查相关材料后发现不是权限问题。


1、程序代码:

Dim databasePath,conn,connString

databasePath = "db.mdb"

Set conn = Server.CreateObject("ADODB.Connection")

connString = "driver={Microsoft Access Driver (*.mdb)};dbq="& Server.MapPath( databasePath )

conn.Open connString

错误信息如下:

[url]http://127.0.0.1/conn.asp[/url]

Microsoft JET Database Engine 错误 '80004005'

未指定的错误

/conn.asp,行 6

2、初步测试

看看连接语句也没什么错误,不过第一反应还是换个写法:

程序代码:2

Dim databasePath,conn,connString

databasePath = "kphc.mdb"

Set conn = Server.CreateObject("ADODB.Connection")

connString = "driver={Microsoft Access Driver (*.mdb)};dbq="& Server.MapPath( databasePath )

conn.Open connString

错误如下:

[Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0x474 Thread 0x290 DBC 0x79d024 Jet'.

/conn2.asp,行 6

3、再分析

一般遇到这种问题,多数是因为mdb文件所在目录中IUSER_SERVENAME用户没写权限引起的,不过我朋友木鱼的服务器是我亲手配置的,权限设置没有问题。在IIS配置中加入写权限也是错误依旧.

检查C盘的权限,只有administrator和system用户,我突然想到数据库写入需要temp临时文件有写的权限,于是修改Windows/temp的权限,添加IUSR_的读写权限。问题立即解决。

另:网上有资料是关于静态网站改动态网站后ASP页面打不开的解决方法,操作如下:

重新把IIS注册一下,命令:aspnet_regiiis -i .注意,为什么要这样呢?因为IIS和.net框架安装是有先后顺序的.[具体操作:在运行了键入cmd,然后转到c盘,在键入cd C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322,最后键入aspnet_regiis -i


相关信息