IIS 5 & IIS 6
2147024894 - The system cannot find the file specified.
Last post Sep 22, 2008 03:56 PM by zdenek
Sep 16, 2008 07:58 PM|bbxrider|LINK
winxp pro, iis5.0
the subject is ther error message when trying to open a .mdb with adodb in a test site, the app works ok in its production site, but its a hosted and can't see file properties there.
at first the file was in a dir under inetpub/wwwroot/mdbDir/myDB.mdb, i gave the internet guest account read+write permissions for both the folder and the .mdb
somebody suggested that permissions are hard to deal with for anything under inetpub, to try a different location, so i tried that with dir first level under c: with same permissions
but still getting same error?? am i giving the permissions to the wrong user? or any suggestions what to try?
Sep 17, 2008 08:43 AM|tomkmvp|LINK
What is testmdbpath set to?
Sep 17, 2008 11:27 AM|bbxrider|LINK
thanks for the reply
so the final path should be "c:\backup\volunteer.mdb", which should be right?
and just fyi , i'm using this funky "\volunteer.mdb" because in production there is a mappath to get the path and the way the mappath is invoked it does not return the "\" at the end of the directory path string. i'm just trying
to resolve this now in a test area. actually since i'm getting the same cannot find file specified when my target mdb is under inetpub, i would prefer to solve the whole issue to get the permissions right in my test area when the mdb is in a dir under inetpub. but
i'm just trying to get a starting point here.
another related question: if i have permissions right to get write access in a directory somewhere other than under inetpub, shouldn't the same permissions work for a dir under inetpub, if inheritance is disabled for that directory?
Sep 17, 2008 09:04 PM|bbxrider|LINK
i guess its all relevant but nothing real specific.
i googled the error message and from that i think it may be a dll problem.
i double and triple checked that permissions. i even gave the iusr.... account full control just to be sure all the permissions are covered. and to test further, i can open the mdb via adodb with a vb.net program in visual studio, but with that i'm running
under an admin user. the vb.net is similar except the open is
cn = CreateObject("adodb.connection") instead of
cn = server.CreateObject("adodb.connection") and the error is not on the create object but the cn.open
since this is xp instead of sbs, perhaps somethings wrong there?
Sep 18, 2008 09:02 AM|tomkmvp|LINK
Just to confirm - you're allowing anonymous access to the ASP page that runs this code?
Sep 18, 2008 10:29 AM|bbxrider|LINK
thanks for the many replies
yes anon access is checked and in that same panel the iusr_machineName is the designated account, that account is the one given read+write permissions to both the file and the file folder?
there is a great tool called depends.exe (and its not for seniors
Sep 19, 2008 03:30 AM|bbxrider|LINK
sorry about the unfinished post
there is a great tool called depends.exe [and its not for seniors :-) ] that lists out all the dll's used vb programs. is there any such tool for asp programs. ?
Sep 19, 2008 05:32 PM|zdenek|LINK
I'm not sure which language you are using in your ASP but remember that \v sequence in your volunteer may be understood as an escape sequence for vertical TAB character. Try "\\volunteer" and C:\\ in your strings and see if that works
Sep 20, 2008 03:19 AM|bbxrider|LINK
the same code has worked before on both a sbs2000 and a hosted website machine.
this program also writes a daily text log file, so it both creates and appends to it. it also creates a pdf file from a utility, creates writes a html and vcf file. the big difference, is, these are all text files except of course for the pdf from the utility.
so it has the right code, paths, etc to write to files. it seems the problem is writing, adding rows to a table, to a mdb file. to me this implies a different set of dll's than text files. this is why i'm thinking its a misleading message, and its not my target
Sep 22, 2008 08:46 AM|tomkmvp|LINK
The "\" issue raised by the previous poster is not relevant in your case.
What's the exact/full error message you're getting?
Sep 22, 2008 09:18 AM|Rovastar|LINK
Can you access the path database directly with no variables in the path?
80070002 (2147024894 decimal) errors seem to be malformed path access or something else access the resource in many cases.
Sep 22, 2008 03:32 PM|bbxrider|LINK
thanks for the continuing replies,
the full error message is: "2147024894 - The system cannot find the file specified", i get that from err.number and err.description
i tried a hardcoded path, and no difference. to test further, i am trying a cdo message, and get the exact same error for a cdo.message send, the exact same error as the cn.open, see prev posts for that code
Set objMessage = server.CreateObject("CDO.Message"); objmessage.subject = "subject text", etc, etc, objmessage.send
so with the cdo send error, it sure seems some how the asp dll's (or something similar) are not getting accessed. my iis is pretty vanilla with the default isapi configs for asp, i have all the latest and greatest xp updates installed. but some dll functionality is
getting through, as i mentioned before i can create and write text files in the same dir where the mdb is. the following works ok.
set flog= server.createobject("scripting.filesystemobject")
set l = flog.OpenTextFile(phsDataPath & "\" & dtework & "volunteer.log",ForAppending,true)
this is really driving me nuts.
Sep 22, 2008 03:56 PM|zdenek|LINK