我爱Aspx >> Asp.Net >> 彻底解决“Microsoft JET Database Engine 错误 80004005”下午网友那里发过来消息,asp程序连接access数据库出些错误,简单看了一下,整理过程如下:
1、基本信息
程序代码:
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
http://127.0.0.1/conn.asp
Microsoft JET Database Engine 错误 '80004005'
未指定的错误
/conn.asp,行 6
看看连接语句也没什么错误,不过第一反应还是换个写法:
程序代码:
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用户没写权限引起的,不过朋友的情况,mdb的磁盘都是FAT32的。在IIS配置中加入写权限也是错误依旧,开始有点晕了。
到MS“关于 Active Server Pages 和 Microsoft 数据访问组件中的 80004005 错误的疑难解答”里面也没发现相同错误;倒是看到一片文章“关于ASP访问ACCESS数据的“不能打开注册表关键字”80004005错误的探讨”,大致是说需要修改Winnt/temp的权限,不过记得正常情况下temp目录也没有everyone的写权限的,本来打算让朋友给这个目录加IUSER的写权限来测试的,结果他的机器添加权限都出错,ft!
没办法,只要cmd下把IUSER加到administrators组看看了,添加后重起IIS,问题解决,2种连接方式都可以了,看来还是权限的问题引起的。因为朋友要吃饭了,所以没再测试,具体是因为那里权限不足,还没找到。。。
有时间再看看的时候给大家准信,呵呵!
一般是用A、修改Winnt/temp的权限,不过记得正常情况下temp目录也没有everyone的写权限的。
如果不行的话。用B、把Iuser加到administrators组里就可以解决了!我试过成功了!
上一篇: 对ASP 动态包含文件方法的改进
下一篇: 用ASP+DLL实现WEB方式修改服务器时间
Ҷƪл˵?
使用ASP的Dictionary对象打造完美..[05-15]
在XSL中引用自身数据的两种方法[05-15]
在XSLT中实现按日期排序[05-15]
XslTransform.Transform 方法如何..[05-15]
构建基于Web/XML的信息集成研究[05-15]
XPath查询XML文档的注意事项[05-15]
XPath在无线应用中的实现(上)[05-15]
XPath在无线应用中的实现(下)[05-15]
XML在.net平台下的自定义控件的应..[05-15]
构建自己的轻量级XML DOM分析程序[05-15]