公益宣传
RSS
热门关键字:  中性点直  耐压试验  零序参数  百问百查  试题库
当前位置 :| 首页>电脑网络>网络知识>

Provider (0x80004005)的问题解决

来源: 时间:2008-10-03 点击:
错误提示:

Provider (0x80004005)

未指定的错误

/conn.asp,第3行

conn.asp里连接数据库的代码可能不规范。

解决方法:

<%

'不规范的写法如下,有时能正常运行,有时不能。

set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("data/xixi.mdb")

%>

<%

'正确写法如下

dbpath=server.mappath("data/xixi.mdb")
set conn=server.createobject("adodb.connection")
conn.open "provider=microsoft.jet.oledb.4.0;data source=" & dbpath
%>

我把conn.asp文件改为上述正确写法后,即运行正常。可第二天,又不正常了。还是提示出错。。

继续了以下步骤后才可以访问了

.把IIS里“目录安全性”中的“匿名访问和身份验证控制”取消,换成“集成 WINDOWS身份验证”即可。

不过在本机访问的时候,先提示要输入本机的用户名和密码,反正是在本机运行的,这样也可以。只要能正常运行。

网上很多资料都说是没有开启数据库目录的写权限,也有人说是没有开启系统目录下temp的写权限,我不知道这是否是一个误区,毕竟我的是XP系统,XP的解决方法不一定适用于其他操作系统,所以还是转一下别人的帖子,以供参考

以下为转帖(转帖中是win2003 server +asp+access)解决方法一
好好的网页突然出现错误,Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'常见错误 不能打开注册表关键字错误描述:
----------------------------------
Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'
[Microsoft][ODBC Microsoft Access Driver]常见错误 不能打开注册表关键字 'Temporary (volatile) Jet DSN for process 0x728 Thread 0x854 DBC 0x276fb44 Jet'。
----------------------------------

连接方式:
--ODBC连接方式------------------------
mdbpath=server.MapPath("my.mdb.asp")
CnnStr = "DBQ=" & mdbpath & ";DRIVER={Microsoft Access Driver (*.mdb)};uid=admin;pwd="
-------------------------------------

解决方法:
打开winnt\temp目录 将其安全选项内增加 everyone 用户 权限为完全控制 然后重启计算机
如果不重启。会出另外一个错!!!


操作系统 win2000 server sp4/sp3
问题原因。权限不够
唉。查了近1个月不知道是哪里的错。无意中发现了下面的这个贴子再结合实际情况详细的给大家说说

首先产生该错误的根源是 c:\winnt\temp目录

我自已总认为temp目录没有多大用。在优化系统的时候图省事就将这个目录删除了
所以就出现了这样的错误。看了好多的网上的解释解答。都得不到原因。只是说权限不足.但是根源呢
我的机子的C盘为NTFS分区 其它的分区均为FAT32分区 所以应该不存在NTFS的权限问题但是没有想到的是这个 temp目录的问题

总算找到根源了。在这里记录一下。让其它遇到此问题的人省一点劲吧。

网上查找到的解决方法二:

中国代码网www.china-code.net里面有你需要的。


windows+iis服务器上运行asp程序可能会出现数据库无法更新的情况,具体错误信息可能为:

1、Microsoft JET Database Engine (0x80040E09) 不能更新。数据库或对象为只读

2、Microsoft OLE DB Provider for ODBC Drivers (0x80004005)[Microsoft][ODBC Microsoft Access Driver] 操作必须使用一个可更新的查询。

3、Microsoft JET Database Engine (0x80004005) 操作必须使用一个可更新的查询。


首先保证您的conn没有任何问题!!

1.把IIS里“目录安全性”中的“匿名访问和身份验证控制”取消,换成“集成 WINDOWS身份验证”即可。

2、在wwwroot文件夹上面点击右键-“属性”-取消“只读”

3、在您的数据库文件上文件夹上面点击右键-“属性”-“安全”-添加用户:“IUSR_计算机名” 并开放“IUSR_计算机名”的读取、写入权限

此方法是目前解决这个问题最好的办法,一般都可以解决问题

XP系统下可能点击右键看不到“安全”选项,请先打开“工具”-“文件夹选项”-“查看”-取消“使用简单文件共享(推荐)” 然后即可在属性中找到“安全”选项

4、在wwwroot文件夹上面点击右键-“属性”-“web共享”-“共享文件夹”

5.在IIS虚拟目录上点击右键-“属性”-”配置“-”选项“-”启用父目录“

网上查找到的方法三:

-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
解决办法:
在Dos命令行状态下分别输入下列命令并按回车

(Enter)键:

regsvr32 jscript.dll (命令功能:修复Java动态链接库)
regsvr32 vbscript.dll (命令功能:修复VB动态链接库)

然后从新启动,即可恢复
本文关键字: 
上一篇:没有了
下一篇:asp的四舍五入函数方法
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册