注册 登录
编程论坛 ASP技术论坛

'80004005' 错误是什么原因呢

紫苏 发布于 2008-03-21 18:01, 1855 次点击
最近帮人做了一个网站,在本地电脑测试好好的,别的空间也可以。但是发到他们公司的服务器上就不行了,应该是服务器上的电脑设置的问题,但究竟是哪里的原因呢。请高手指点一下,非常感谢!

Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'
[Microsoft][ODBC Microsoft Access Driver]一般错误 无法开启登录键 'Temporary (volatile) Jet DSN for process 0x214 Thread 0xfc8 DBC 0x1ce5024 Jet'。
/shop/conn.asp, 列7
23 回复
#2
madpbpl2008-03-21 18:03
路径问题,建议使用相对路径,不要用绝对路径
#3
紫苏2008-03-22 14:28
谢谢
谢谢楼上的回复,可是我用的是相对路径啊。
#4
紫苏2008-03-22 14:38
有人知道吗?我真的是找原因找得头大。郁闷啊。。。
#5
madpbpl2008-03-22 14:39
把你的conn.asp贴一下,并说明一下相对位置,应该是这里的问题
#6
紫苏2008-03-22 15:03
<%
dim conn,connstr
set conn=Server.CreateObject("ADODB.Connection")
pwd=""
Connstr="DBQ="+server.mappath("logona/logona.mdb")+";DRIVER={Microsoft Access Driver (*.mdb)};pwd="+pwd
conn.Open connstr
sub connclose()
    On Error Resume Next
    If IsObject(Conn) Then
        conn.close
        set conn=nothing
    end if
end sub
%>
这是我改过以后的。下面再发一个以前的。两个都可以用。不知为何上传到公司的服务器上就不行了。
<%
dim db
const DatabaseType="ACCESS"     
db="logona\logona.mdb"           
         On Error Resume Next
    dim ConnStr
    dim conn
        ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(db)
        Set conn = Server.CreateObject("ADODB.Connection")
    conn.Open connstr
    If Err Then
        err.Clear
        Set Conn = Nothing
        Response.Write "数据库连接出错,请检查Conn.asp文件中的数据库参数设置。"
        Response.End
    End If
sub CloseConn()
    On Error Resume Next
    If IsObject(Conn) Then
        conn.close
        set conn=nothing
    end if
end sub
%>
#7
紫苏2008-03-22 15:05
我曾经发到别的空间上测试也可以用。在本地电脑测试也可以。就是上传到公司服务器上就不行。郁闷。
#8
紫苏2008-03-22 15:06
相对于站点根目录下的shop文件夹中。
#9
madpbpl2008-03-22 15:34
logona/logona.mdb  '这个文件应该是logona文件夹下logona.mdb文件
相对于根目录下的shop文件夹路径应该是../logona/logona.mdb
楼主的conn是否是在根目录下呢?对于conn来说,数据库文件是你楼上写的没错,但是对于shop文件夹下的,路径应该是我上面说的../logona/logona.mdb
#10
紫苏2008-03-22 16:09
conn是在shop文件夹中的,但是程序也在shop文件夹中啊。不过我改一下试试。
#11
madpbpl2008-03-22 16:12
[bo]以下是引用 [un]紫苏[/un] 在 2008-3-22 16:09 的发言:[/bo]

conn是在shop文件夹中的,但是程序也在shop文件夹中啊。不过我改一下试试。

conn.asp是不是在根目录下还有一个?如果用的是在shop文件夹中的conn.asp,则应该按我上面说的加上“../(..表示父路径)”
#12
紫苏2008-03-22 16:16
我用的就是shop目录中conn文件,根目录中没有。谢谢madpbpl的指点。我试试看行不行。
#13
紫苏2008-03-22 16:21
还是不行呢。出现一样的提示,而且在本地电脑上也不能连了。
#14
madpbpl2008-03-22 16:46
[bo]以下是引用 [un]紫苏[/un] 在 2008-3-22 16:21 的发言:[/bo]

还是不行呢。出现一样的提示,而且在本地电脑上也不能连了。

楼主的意思是不是网站所在的文件夹是shop?那我上面的说法是错的
那么你的写法应该是正确的,检查一下网站所在公司服务器文件夹的权限。
再检查一下公司服务器的iis设置。

[[it] 本帖最后由 madpbpl 于 2008-3-22 16:47 编辑 [/it]]
#15
紫苏2008-03-22 16:54
权限和IIS的设置要注意哪些呢?请问?我上传的静态网页都可以正常显示,就是这些不行。
#16
madpbpl2008-03-22 17:08
iis设置,主要是是主目录和启用你路径
网站所在文件夹--》属性--》安全--》增加user完全控制权限
asp是动态的,不是一回事。

你本地上如何设置iis,服务器上如何设置就行了
#17
紫苏2008-03-23 13:20
这个:网站所在文件夹--》属性--》安全--》增加user完全控制权限
我改了。可还是不行。

网站根目录下原来有别的公司做的ASP文件,但是却可以打开,不过他们数据库用的是SQL的。我真不知道是哪里错了,真郁闷。
#18
madpbpl2008-03-23 13:27
根据我的经验来说,这个问题应该是路径的问题,估计到的可能也都提了,楼主可以再仔细检查一下
#19
dhdhzzw2008-03-23 13:45
IIS开启了没?server2003默认新建的虚拟目录是不执行的,你看看
#20
紫苏2008-03-23 22:49
如果是路径问题的话,可是我在本地电脑上和在别的虚拟空间中测试都可以打开啊。我一直在想是不是服务器上电脑哪个地方设置不对的问题。IIS是有开启的。这个问题困扰我两天了。唉。。。水平不高就是麻烦。

上午改用DSN连接,在本地电脑测试OK了,上传到服务器又出现这种提示:

Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'
[Microsoft][ODBC Microsoft Access Driver] Microsoft Jet 数据库引擎无法开启 '(未知的)' 档案。它已经被其它的使用者独占地开启,或者您需要有检视数据的权限。

[[it] 本帖最后由 紫苏 于 2008-3-24 10:31 编辑 [/it]]
#21
heyufu2008-03-24 14:30
window\temp 文件夹的各用户权限,你就试了下给temp文件夹user所有权限。
[Img]http://www.[/Img]

[[it] 本帖最后由 heyufu 于 2008-3-24 14:36 编辑 [/it]]
#22
紫苏2008-03-24 16:26
问题解决了!!实在是非常感谢KEYUFU,这问题困扰我两天了呢。

不过,请问一下,这样对电脑的安全性会有什么影响吗?

[[it] 本帖最后由 紫苏 于 2008-3-24 16:27 编辑 [/it]]
#23
madpbpl2008-03-24 17:23
基本上没什么影响,记得我给你建议过这种用法,只是没截图,唉。。。
#24
紫苏2008-03-24 18:07
不好意思,我以為你說的是網頁所放的文件夾,沒想到windows/temp/上去。
1