ASP Weird Unspecified Error - 80004005

2019-02-14 16:47发布

问题:

I had to work on an already made website, just adding some small module

While i was updating, there was many files called myDB.mdb in the different subfolders i wanted to make sure that my app is connecting the right database so i started renaming subfolder...at one of those subfolders, i refreshed,the main site and mine stopped working

i renamed back to the correct name.. refresh... refresh... refresh.. i am still refreshing and i started another browser.. it is giving a connection problem :S

Provider error '80004005'

Unspecified error

/new/conn.asp, line 13

any idea about his :S would appreciate any help !

回答1:

I have had the same problem. The first time I loaded a page it worked well, but if I loaded the page again quickly, then I got this error. If I waited for a while then I didn't get the error. It must be because when you call objConnection.Close it takes some time to actually close the mdb file, so if you try and open it again you get the "File already in use type error". Strangely adding a mode to the connection sorted this problem out for me. It doesn't have to be read only, read / write works as well.

objConnection.Mode = 1 ' read only


回答2:

Whatever happened, it is resulting in an 80004005 error, so the problem is definitely a permission issue.

Depending on the configuration of the web server, it may not be the IUSR account that needs the access. I find it's best to fire up FileMon, filter it to the name of my database (with wildcards), and check out the properties of the error that shows up. Viewing the properties will show you the user that is actually trying to access the file.

For Access databases, you want to make sure that you're modifying the permissions of the folder and not the file. You'll need Modify permissions on the folder so that the .ldb file can be created.



回答3:

Microsoft OLE DB Provider for ODBC Drivers error '80004005' [Microsoft][ODBC Microsoft Access Driver] The Microsoft Jet database engine cannot open the file '(unknown)'. It is already opened exclusively by another user, or you need permission to view its data.

or

Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC Microsoft Access Driver] '(unknown)' isn't a valid path. Make sure that the path name is spelled correctly and that you are connected to the server on which the file resides.

or

Microsoft OLE DB Provider for ODBC Drivers error '80004005' [Microsoft][ODBC Microsoft Access 97 Driver] Couldn't use '(unknown)'; file already in use.

From: http://tutorials.aspfaq.com/8000xxxxx-errors/80004005-errors.html



回答4:

Check that the IUSR account has permissions on the Access database and the folders/sub-folders containing it. I've found that on occasion if you rename or compact an access database it loses IUSR priviledges so appears in use / locked



回答5:

I had the same error on Access DB : Provider error '80004005' Unspecified error

Reason was that one of the pages included files was not in the right format (UTF-8) but ANCI When I changed that file to UTF-8 , everything woked right !

greeting otto