powered by simpleCommunicator - 2.0.35     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Почему не срабатывает Session_End в global.asax ?
4 сообщений из 4, страница 1 из 1
Почему не срабатывает Session_End в global.asax ?
    #32253304
Фотография superbluesman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заделал я, значится, в global.asax простейший счётчик посещений,
но Sub Session_End нивкакую не хочет срабатывать, когда жму в окошке IE x в правом верхнем углу (: Уже всяко проверял:


Imports System.Web
Imports System.Web.SessionState
Imports System.IO

............

Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
Application("ActiveUsers") = 0
End Sub



Sub Session_Start(ByVal sender As Object, ByVal e As EventArgs)
Dim iTotalUsers As Int64, readStr As String, cFileName As String
cFileName = "counters.txt"
iTotalUsers = 0
Try
If File.Exists(Server.MapPath(cFileName)) Then
Dim objReader As New StreamReader(Server.MapPath(cFileName))
With objReader
'While .Peek() > -1
readStr = .ReadLine()
readStr = .ReadLine()
.Close()
iTotalUsers = CInt(readStr.Trim)
End With
End If
Catch runexception As Exception
Finally
End Try

iTotalUsers = iTotalUsers + 1

Try
Dim objWriter As New StreamWriter(Server.MapPath(cFileName), False)
With objWriter
.WriteLine("TOTAL SESSIONS:")
.WriteLine(iTotalUsers.ToString)
.Close()
End With
Catch runexception As Exception
Finally
End Try

Application.Lock()
Application("ActiveUsers") = IIf(Application("ActiveUsers") > iTotalUsers, iTotalUsers, Application("ActiveUsers") + 1)
Application("TotalUsers") = iTotalUsers
Application.UnLock()
End Sub



Sub Session_End(ByVal sender As Object, ByVal e As EventArgs)
Application.Lock()
Application("ActiveUsers") = Application("ActiveUsers") - 1
Application.UnLock()
End Sub
...
Рейтинг: 0 / 0
Почему не срабатывает Session_End в global.asax ?
    #32255066
Orion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Когда ты таким образом закрываешь окно, сервер об этом не уведомляется, а следовательно сессия закроется сервером через установленный промежуток времени, который хранится в Session.Timeout

Закрывай сессию сам методом Session.Abandon() где тебе удобно.
...
Рейтинг: 0 / 0
Почему не срабатывает Session_End в global.asax ?
    #32255087
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А почему счетчик посещений на End ??????
Обычно делают на New - а то как-то необыыыыыыыыычно...
...
Рейтинг: 0 / 0
Почему не срабатывает Session_End в global.asax ?
    #32255405
Фотография superbluesman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to Tygra:

в Session_End я делаю Application("ActiveUsers") = Application("ActiveUsers") - 1

в надежде показать, что активных пользователей уменьшилось на 1
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Почему не срабатывает Session_End в global.asax ?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]