archivo global.asa y salida de usuarios

bompty
01 de Julio del 2004
hola nuevamente espero que si me puedan ayudar.

mi problemas que cuando un usuario abandona el sitio, no lo puedo dar de baja de la parte usuarios activos el codigo del global.asa es:

<SCRIPT LANGUAGE="VBScript" RUNAT="Server">

Sub Application_OnStart

DIM Usuarios(13)

application("Usactivo")=Usuarios

application("temp")=""
'application("usuario1")=""
'application("usuario2")=""
'application("usuario3")=""
'application("usuario4")=""
'application("usuario5")=""
'application("usuario6")=""
End Sub


Sub Application_OnEnd

Usuarios = application("Usactivo")

for x=1 to 13 step 1
if Usuarios(i) <> "" then
Usuarios(i) = ""
end if
Next

End Sub


Sub Session_OnStart

Session("activo")=""
Session.Timeout = 2

End Sub

Sub Session_OnEnd
listar = application("Usactivo")

for x=1 to 13 step 1
if listar(i) = Session("activo") then
listar(i) = ""
MsgBox (listar(i))
end if
Next

application("Usactivo") = listar

End Sub

</SCRIPT>

y la parte de la validasion de los usuarios a la ora de identificarse es:

sSQL="Select * From usuarios where Usuario like '%"&nom&"%'"
estado="no se"

'Ejecutamos la orden
RS.Open sSQL, Conn, adOpenKeyset, adLockOptimistic, adCmdText

lista1 = Application("Usactivo")

if not RS.eof then

if RS("Usuario")=nom AND RS("Pass")=contra Then
estado="activar"

for i=1 to 13 step 1
if lista1(i) = nom then
estado = "activo"
call Msbox ()
end if
Next

UNA=1

if estado = "activar" then
for i=1 to 13 step 1
if lista1(i) = "" then
lista1(i) = nom
i=14
else
UNA = UNA + 1
end if
Next
end if

if UNA = 14 then
call Msbox1()
end if

else
estado="no esta"
end if
end if

Application("Usactivo") = lista1

con esto si me identifica quien esta ya activo en el sistema, lo cual me sirve para no tener usuarios duplicados, el problema es como y cuando pararlo a usuario inactivo o fuera de sistema.

bueno de antemano muchas gracias y espero si me puedan ayudar