asp+access的Microsoft JET Database Engine 错误 '80004005'未指定的错误解决办法
错误现象:
Microsoft JET Database Engine 错误 '80004005'
未指定的错误
/Include/ConnSiteData.asp,行 5
分析:
ASP链接ACCESS.mdb的数据库文件失败,可能是由于权限问题造成的,权限大部分是由网站的目录权限,系统的临时文件夹权限和IIS浏览网站的权限
错误解决办法:
打开 FileMonitor 这个监控软件,因为默认情况下它跟踪的信息太多,造成查错如同大海捞针。
这里有个技巧就是先打开监视,然后选择你不需要监控的那些进程,或者一个目录。
点菜单里的: Edit -> Exclude Process 或 Edit -> Exclude Path 排除掉不需要监控的内容。
然后就会发现产生的信息大大减少了。
清空输出,重新开始监控,刷一下网页,再停止监控。很快看到一个信息:
115 15:59:40 DLLHOST.EXE:2804 CREATE C:\WINNT\TEMP\JET5EA6.tmp ACCESS DENIED CR\IUSR_CR
可见是因为 C:\winnt\temp 目录没有对 CR\IUSER_CR 账户开放权限,导致没法创建临时文件(奇怪的是 CR\USER_CR 这个账号访问 Access 的时候需要生成临时文件)。
找到这个目录,设置一下权限。然后刷新网页就会发现好了。
当然具体情况下目录名可能不一定就是这个,但是查错方法就是这样的了,一般都可以解决。
asp+access的Microsoft JET Database Engine 错误 '80004005'未指定的错误解决办法