Предотвращение закрытия браузера IE из панели задач из приложения ASP.NET - PullRequest
0 голосов
/ 01 декабря 2011

Мне нужно приложение asp.net, мне нужно, чтобы пользователь не мог закрыть приложение, щелкнув правой кнопкой мыши меню IE на панели задач и закрыв его, когда пользователь вошел в приложение.Есть ли способ отключить меню закрытия или получить событие закрытия в приложении и использовать это событие для выхода из системы, а затем закрыть браузер?

Спасибо

Ответы [ 3 ]

2 голосов
/ 01 декабря 2011

Извините, я не думаю, что вы сможете получить настолько большой контроль над браузером из любого веб-приложения, независимо от того, является ли он ASP.NET или чем-то еще.

1 голос
/ 01 декабря 2011

Если вы используете постоянные куки для аутентификации, правильное поведение - держать пользователя вошедшим, даже если он закрывает браузер.Если это поведение нежелательно, используйте сеансовые куки.Срок действия этих файлов cookie истекает, когда пользователь закрывает браузер и выходит из системы.

1 голос
/ 01 декабря 2011

попробуйте

< html> 
< head>
< title>< /title>
< /head>

< body onbeforeunload="alert('Closing');">
< /body> 
< /html>

, но имейте в виду, что есть несколько других способов закрыть проводник, которые вы не можете поймать ..


После того, как я написал это, я попробовал и обнаружил действительно раздражающую вещь, события onbeforeunload и onunload запускаются не только при закрытии окна, но и при обычной навигации по страницам.

обходной путь может быть таким: Самый надежный способ - вызвать некоторую функцию во время события onbeforeunload и заставить эту функцию искать некоторую переменную «flag». Все ваши ссылки должны были бы установить эту переменную так, чтобы функция знала, что ссылка нажата, в то время как браузер close не установил бы эту переменную и та-да - теперь вы можете отличить событие закрытия от события навигации. Недостатком этого метода является то, что вы должны добавлять код к каждому щелчку ссылки, а навигация по меню (т. Е. Кнопка назад и т. Д.) Не будет правильно устанавливать флаг. Тем не менее, это лучшее, что я видел до сих пор.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...