Det fina med global.asa är att den (försöker) hålla reda på när sessions-objektet dör, och att man kan garantera att den alltid körs.
Men, du kan ju - på vilken sida som helst - kolla om t.ex. Session("Banan") är definierad. Är den inte det så är användaren ny, varvid man kan sätta Session("Banan") till now() och öka på räknaren. När värdet Session("Banan") börjar bli lite gammalt så sätter vi om det till now igen.
Hur hantera onend? Mja..varje gång man sätter in värdet i Session("Banan") så passar man på att berätta för en Application-variabel, som kan vara en tvådimensionell array eller ett Dictionary, att nu har Sessionen med SessionID blablabla uppdaterats.
När man sedan tar ut antalet inloggade så passar man på att rensa bort sådana som är för gamla.
Sedan kan man ju fråga sig varför global.asa kraschar..