2024年3月21日发(作者:)

IIS权限读取出现问题(provider错误80004005等问题)的

解决办法

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) 操作必须使用

一个可更新的查询。

4、其他。

解决方法:(针对不同的服务器可能解决办法不一样,在这里假设

网站主目录为wwwroot)

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

1、把iis里“目录安全性”中的“匿名访问和身份验证控制”取消,

换成“集成 windows身份验证”即可。

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

3、数据库所在文件夹权限:

打开办法是:打开我的电脑,然后点菜单上的“文件夹选项”--->

查看,然后把“使用简单文件夹共享(推荐)”前面的钩去掉,然后点

“确认”;接下来回到需要打开权限的文件夹(数据库存放的文件

夹),右键---> 属性--->安全,然后点“添加”--->"高级"--->立即查

找--->然后在下面的地方选择“everyone”--->确定--->点刚才加入

的"everyone",然后在下面的大框编辑everyone权限为完全控制,保

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

题 xp系统下可能点击右键看不到“安全”选项,请先打开“工具”-

“文件夹选项”-“查看”-取消“使用简单文件共享(推荐)” 然

后即可在属性中找到“安全”选项。

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

-“共享文件夹”

5、在iis虚拟目录上点击右键-“属性”-”配置“-”选项“-”

启用父目录“

6、如果一般未指定的错误,还有个办法,先其实只要很简单的几

步:

开始。。。运行。。。regsvr32

开始。。。运行。。。regsvr32

开始。。。运行。。。iisreset

7、系统可能没有注册,解决办法是

点 开始--->运行,输入 regsvr32 , 回车即可;

8、需要打开guest用户

打开方法:我的电脑--->控制面板--->管理工具---->计算机管理--

->本地用户和组---用户---

找到"guest",双击,然后把弹出来的狂上的“帐户已停用”前的

钩去掉,保存即可。

9、在组件服务中,依次展开“计算机”--“我的电脑”--

“COM+应用程序”,右击“IIS Out-Of-Process Pooled

Applications”选择属性,在“标识”选项卡中选择“系统账户”--

“交互式用户”。

10、temp(临时文件夹)权限

打开办法:windows--->temp,单击右键选择-属性,你就会看

到一个叫做“安全”的选项,添加一个everyone,权限设置为完全控

制,再将你正在使用windows的用户也设置为完全控制。

打开办法是:打开我的电脑,然后点菜单上的“文件夹选项”--->

查看,然后把“使用简单文件夹共享(推荐)”前面的钩去掉,然后点

“确认”;接下来回到需要打开权限的文件夹(数据库存放的文件

夹),右键---> 属性--->安全,然后点“添加”--->"高级"--->立即

查找--->然后在下面的地方选择“everyone”--->确定--->点刚才加

入的"everyone",然后在下面的大框编辑everyone权限为完全控制,

保存即可。