El problema que tengo es el siguiente: yo estoy programando un sitio en ASP. Todo funciona bien. El problema se me presento cuando estoy justamente casi por terminar. El sitio tiene un login, o sea para entrar el usuario escribe un nombre de usuario y una contraseña. Yo quiero que el login sea para una sola persona a la vez, osea si hay alguien logeado y alguien se logea con el mismo usuario y contraseña no le permita ingresar.
Para esto lo que hice fue que cuando entra el primer usuario, una variable application("login") se pone en "ocupado" , y cuando se desconecte esta se ponga en "desocupado", por lo tanto cuando trate de entrar otro usuario mientras este esta logeado, como application("login") va a estar "ocupado" no lo va dejar entrar hasta que el primero se desconecte y se ponga en "desocupado" nuevamente.
Como hago esto?
Cuando verifico que el usuario y contraseña son correctos, lo mando a donde corresponde, y pongo application("login")="ocupado" .
El problema esta especificamente en que la unica forma de asegurarse de que cuando el usuario cierre la ventana y la variable application se ponga en "desocupado" nuevamente es mediante el Global.asa, asi:
...
Sub Session_OnEnd
Application("login")="desocupado"
End Sub
...
Pasa que no importa como lo hagas, no anda ! .
Por lo que anduve leyendo por ahi la gente de Microsoft reporto esto como un bug del Server 2003 con Service Pack 2, que es justamente lo que usa mi hosting pago.
Y ahora que hago? que yo sepa no hay forma de simular la funcion del Sub Session_OnEnd en el global.asa.
Nota: este bug es para ASP y no para .NET