Windows 7/windows server 2008 R2 64位版IIS不能连接Access数据库,80004005报错的解决办法
未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序。
IIS跑在64位环境下引起的。而64位下,是木有Access数据库的驱动的(包括Excel也不行)。
解决办法是:在目标网站的应用程序池中选择高级设置,然后将启用32位应用程序设置为true,重启IIS即可
如果是出现提示:ACCESS数据库连接出错
Microsoft JET Database Engine 错误 '80004005'
操作必须使用一个可更新的查询。
请检查以下2个地方
1:修改方法:
给“系统盘:/Windows/ServiceProfiles/NetworkService/AppData/Local/Temp”目录添加 一个“Authenticated Users”的用户,其中AppData目录是隐藏的,在进入的时候可以直接在地址栏输入路径,或者在文件夹选项里显示隐藏文件。
设置权限步骤:右击Temp文件夹,选择“属性”》选择“安全”选项卡》单击“编辑”》出来“Temp 的权限”对话框,单击“添加”,在下面的“输入对象名称来选择”中输入Authenticated Users,确定》返回到“Temp 的权限”,将Authenticated Users的权限中的完全控制给勾上,确定》确定。
2:给你网站的运行目录,也加上如上的权限
(如果是数据库 加上修改、写入的权限,实际上就等同于 完全修改了)
网上有个人写到
特别提醒自己。因为vista在NTFS(磁盘格式)下,所以还要在自己文件夹的安全标签中分别添加:IUSER_机器名和Athenticated Users的完全控制权限。为什么没有了IWAM呢?不懂
这句话,和我遇到的问题很像··
另外还有一个 检测到在集成的托管管道模式下不适用的 ASP.NET 设置
这个还是那个 32位 和 64位的问题