常见错误 不能打开注册表关键字 ‘Temporary (volatile) Jet DSN 解决方法/asp+access

Microsoft   OLE   DB   Provider   for   ODBC   Drivers   (0x80004005)
[Microsoft][ODBC   Microsoft   Access   Driver]常见错误   不能打开注册表关键字   ‘Temporary   (volatile)   Jet   DSN   for   process   0xbec   Thread   0xd34   DBC   0x3510024   Jet ‘。

处理方案

依次检查以下每一项:

  1. 首先检查程序里数据库路径没有写错
  2. 然后检查机器的C:\WINDOWS\temp有没有给IIS帐户“写入”权限
  3. 还要检查数据库所在目录是否有可读可写权限
  4. 然后尝试注册组件试一试
  5. 还有考虑把MSDTC组件卸载了重新安装一次
1、停止MSDTC服务:net stop msdtc
2、卸载MSDTC服务:msdtc -uninstall
3、重新安装MSDTC服务:msdtc -install
4、确认在事件查看器中msdtc服务已经正常启动[这步很关键,如果没有,重新启动下电脑看看]
如果正常的话请你跳过此步骤;如果出错,无法正常启动,请在开始菜单的运行中 运行:msdtc -resetlog 以创建日志文件。重起机器,检查IIS是否可以正常使用,若不行继续。

asp+access很不爽,IIS用户需要对系统临时文件夹的读写权限,让人感觉不安全有隐患。应该是access数据库运行的临时文件要放到windows临时目录里,但这个临时文件又不能设置到其它文件夹,而且access的数据库操作又不能在一个隔离的用户下进行(它直接使用IIS用户),所以,如果可以就放弃asp+access吧,甚至连asp都放弃

发表评论?

0 条评论。

发表评论