Problemas con Global.asa

06/02/2004 - 22:45 por Xavi | Informe spam
Buenas a todos

Tengo colocado un global.asa en una pagina que lo que hace es leer un
fichero de texto donde se guardan las visitas y asi poder controlar las
visitas a la pagina.
La pagina donde esta el contador no tiene enlace, es para uso interno, pero
de tanto en tanto al entrar a la pagina da un error en el global.asa, tipo a
este

Error de Microsoft VBScript en tiempo de ejecución error '800a0046'.
Permiso denegado

Este es el codigo que tengo en el global.asa
Aunque no aparece muy a menudo, me parece un poco extraño:

<script language=vbscript runat=server>
sub application_OnStart
set fso=server.createObject("Scripting.FileSystemObject")
set
fitxer=fso.OpenTextFile(server.MapPath("contador/web.txt"),1,false,false)
application.lock
application("visites")=fitxer.ReadLine
application.unlock
end sub

sub session_OnStart
application.lock
application("visites")=application("visites")+1
application.unlock
set fso=server.createObject("Scripting.FileSystemObject")
set
fitxer=fso.CreateTextFile(server.MapPath("contador/web.txt"),true,false)
fitxer.WriteLine(application("visites"))
end sub
</script>

Si alguien pudiera ayudarme

Gracias de antemano y un saludo a todos
Xavi
 

Leer las respuestas

#1 Benjamin Porter
07/02/2004 - 08:41 | Informe spam
En tu rutina de Session_onStart estás creando el archivo nuevamente
("CreateTextFile"). En general no es un manejo conveniente porque varias
personas pueden modificar el archivo al mismo tiempo, eso te va a traer
problemas de que el archivo está abierto por otra sesión y por eso no puedes
eliminarlo para crearlo nuevamente.

Los problemas disminuirían (pero no totalmente) si abrieras el archivo y
modificaras el valor existente en lugar de crear un nuevo archivo.

De todas formas, en mi humilde opinion, lo más conveniente sería guardar
estos datos en una BD.


Atentamente
_____________________
Benjamin Porter

(Evidentemente sin el ".punto")







"Xavi" escribió en el mensaje
news:%
Buenas a todos

Tengo colocado un global.asa en una pagina que lo que hace es leer un
fichero de texto donde se guardan las visitas y asi poder controlar las
visitas a la pagina.
La pagina donde esta el contador no tiene enlace, es para uso interno,


pero
de tanto en tanto al entrar a la pagina da un error en el global.asa, tipo


a
este

Error de Microsoft VBScript en tiempo de ejecución error '800a0046'.
Permiso denegado

Este es el codigo que tengo en el global.asa
Aunque no aparece muy a menudo, me parece un poco extraño:

<script language=vbscript runat=server>
sub application_OnStart
set fso=server.createObject("Scripting.FileSystemObject")
set
fitxer=fso.OpenTextFile(server.MapPath("contador/web.txt"),1,false,false)
application.lock
application("visites")=fitxer.ReadLine
application.unlock
end sub

sub session_OnStart
application.lock
application("visites")=application("visites")+1
application.unlock
set fso=server.createObject("Scripting.FileSystemObject")
set
fitxer=fso.CreateTextFile(server.MapPath("contador/web.txt"),true,false)
fitxer.WriteLine(application("visites"))
end sub
</script>

Si alguien pudiera ayudarme

Gracias de antemano y un saludo a todos
Xavi


Preguntas similares