Форум: "Сети";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.10;
Скачать: [xml.tar.bz2];




Вниз

Как отследить событие <reset> компьютера на котором висит подконнекченый к серверу клиент 


Serguar   (2001-10-09 11:01) [0]

Привет всем.
У меня в локальной сети приложение-сервер на TServerSocket, куча клиентов на TClientSocket. Когда выгружается клиент или выключается Windows с клиентом - сервер это видит (что клиент отсоединился), а вот если на клиенте пользователь нажал reset -
то ни как не могу отловить его проподание.
Может кто нибудь знает как бороть?



PGM   (2001-10-09 11:07) [1]

А разве в сокете не возникает ошибка? У меня Клиент отлично чувствует не только это, но и просто закрытие Сервера. Просто проходит определенный таймаут. Может надо подождать.



Polevi   (2001-10-09 11:41) [2]

Релизуй обмен определенными сообщениями между клиентом и сервером каждую минуту, например
Если сервер не получил от клиента сообщение - значит клиент в оффлайне



Serguar   (2001-10-09 12:09) [3]

>PGM да нет, клиент то чувствует, мне наоборот надо, что бы серевер это засекал.



Wizard_Ex   (2001-10-14 12:18) [4]

Обработай сообщение wm_QueryEndSession и в нем отошли серверу сообщение от закрытии.
У меня так сделано и работает



Polevi   (2001-10-14 12:24) [5]

2Wizard_Ex ©
По твоему при нажатии Reseta приходит QueryEndSession???
Это просто здорово!!
Виндовс мне нравится все больше!



Anatoly Podgoretsky   (2001-10-14 14:26) [6]

Надо подождать, может в будущем это будет возможно, по крайней мере с кнопкой питания так было, никто несколько лет назад в это бы и не поверил.



Polevi   (2001-10-15 14:11) [7]

В будущем вообще никуда нажимать не надо будет :-)



Wizard_Ex   (2001-10-15 14:45) [8]

Пардон, не врубился



Sir Alex   (2001-10-15 16:00) [9]

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



Serguar   (2001-10-15 16:21) [10]

Спасибо за активность, не ожидал.
> Sir Alex: пробовал пинговать, с интервалом в 3 сек. Почему то по истечении определенного времени у меня выпадает кто нибудь из клиентов.
Естественно, я удаляю его из списка. :-(



Anatoly Podgoretsky   (2001-10-15 23:20) [11]

Polevi © (15.10.01 14:11)
Это точно, абсолютно лишнии кнопки.
Кнопкой питания я уже давно не пользуюсь, а кнопки сброса на многих Brand Name просто нет.



Anatoly Podgoretsky   (2001-10-15 23:22) [12]

Неверно поступаешь, надо пинговать несколько раз и только после некоторого количество отказов вырубать, а то ты так вырубашь вполне живых клиентов.
Например пингуй 1 раз в секунду и вырубай после 3-5 отказов подряд.



xnum   (2001-10-16 11:31) [13]

Пингировать, это через какое событие? надо исп. таймер?




Форум: "Сети";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.10;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.73 MB
Время: 0.04 c
6-28523           Dr. Web               2001-10-03 10:34  2002.01.10  
Фильтрация IP пакетов...


1-28494           Man In Red            2001-12-22 21:08  2002.01.10  
Извините, но приходится еще раз задать этот вопрос, не получается все никак по нормальному сделать! Помогите пожалуйста!


1-28449           Knyaz17               2001-12-21 11:47  2002.01.10  
Как наследовать метод не родителя, а родителя родителя?


14-28531          Burmistroff           2001-11-10 20:22  2002.01.10  
Opera + delphi.mastak.ru?


3-28439           Denis Proshkin        2001-12-08 10:32  2002.01.10  
Удаление повторяющихся данных