Форум: "Сети";
Поиск по всему сайту: 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.013 c
1-28491           MK                    2001-12-21 21:28  2002.01.10  
Как перемещать картинку в TImage мышью


3-28425           bk                    2001-12-09 16:27  2002.01.10  
Excel I ADO


14-28528          Васильев П.           2001-11-09 23:01  2002.01.10  
Прибалтийцы и живущие в дальнем зарубежье!


1-28468           avr555                2001-12-21 16:50  2002.01.10  
Сделать компонент поверх всех.


6-28515           Woolen                2001-10-13 09:52  2002.01.10  
Определение URL