01. august 2003 - 17:05Der er
6 kommentarer og 2 løsninger
Permission denied
Hej
Sommetider får jeg "Permission denied" i linien "Set f = fso.OpenTextFile(filespec,2)". Hvorfor og hvad løses problemet?
<%
Dim fso, f, filespec Set fso = CreateObject("Scripting.FileSystemObject") filespec = Server.Mappath("/chat/count_chatters.txt")
' Åbn filen til læsning og Læs linie for linie Set f = fso.OpenTextFile(filespec,1) Do While not f.AtEndOfStream count_chatters = f.ReadLine Loop f.Close
' Skriv tekst i en linie Set f = fso.OpenTextFile(filespec,2) if Request.QueryString("mode") = "leave" then f.Write count_chatters - 1 Response.Cookies("onChat") = "false" else f.Write count_chatters + 1 Response.Cookies("onChat") = "true" end if
ja, men så er det jo fordi serveren ikke er klar til at betjene dig. Du må fange fejlen i en on error og så vente. Og meddelelsen 'permission denied' er vel meget beskrivende for situationen.
Jeg løste selv problemet lave to forskellige "f-referancer'er". Fejlen kom ved at en fil var ved at læse samtidigt med at en anden fil var ved at skrive.
<%
Dim fso, f, filespec Set fso = CreateObject("Scripting.FileSystemObject") filespec = Server.Mappath("/chat/count_chatters.txt")
' Åbn filen til læsning og Læs linie for linie Set fOne = fso.OpenTextFile(filespec,1) Do While not f.AtEndOfStream count_chatters = f.ReadLine Loop fOne.Close
' Skriv tekst i en linie Set fTwo = fso.OpenTextFile(filespec,2) if Request.QueryString("mode") = "leave" then f.Write count_chatters - 1 Response.Cookies("onChat") = "false" else f.Write count_chatters + 1 Response.Cookies("onChat") = "true" end if
Dim fso, fOne, fTwo, filespec Set fso = CreateObject("Scripting.FileSystemObject") filespec = Server.Mappath("/chat/count_chatters.txt")
' Åbn filen til læsning og Læs linie for linie Set fOne = fso.OpenTextFile(filespec,1) Do While not fOne.AtEndOfStream count_chatters = fOne.ReadLine Loop fOne.Close
' Skriv tekst i en linie Set fTwo = fso.OpenTextFile(filespec,2) if Request.QueryString("mode") = "leave" then fTwo.Write count_chatters - 1 Response.Cookies("onChat") = "false" else fTwo.Write count_chatters + 1 Response.Cookies("onChat") = "true" end if
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.