Модераторы: Snowy, Poseidon, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Synapse. Обработка закрытия сокета удалённой сторо 
:(
    Опции темы
Bogdan2004
Дата 8.11.2012, 14:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 12.2.2008

Репутация: нет
Всего: нет



Добрый день!

 Есть задача обмен с удаленным сервером данными по TCP/IP использую для обмена TTCPBlockSocket. Иногда удаленный сервер закрывает соединение, а TTCPBlockSocket считает что соединение есть, событие OnStatus не генерируется :(
 Подскажите как отследить закрытие сокета удаленной стороной?
PM MAIL   Вверх
MetalFan
Дата 8.11.2012, 17:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 14
Всего: 128



Bogdan2004, попробовать что-нибудь в него записать/из него прочитать. если свалится - значит закрыт уже.

Это сообщение отредактировал(а) MetalFan - 8.11.2012, 17:14


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
Bogdan2004
Дата 8.11.2012, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 12.2.2008

Репутация: нет
Всего: нет



Цитата(MetalFan @ 8.11.2012,  17:14)
Bogdan2004, попробовать что-нибудь в него записать/из него прочитать. если свалится - значит закрыт уже.

Такой подход реализован, но он "не красивый".
Хочется это сделать более корректно.
PM MAIL   Вверх
MetalFan
Дата 8.11.2012, 22:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 14
Всего: 128



Bogdan2004, чем же он некрасивый? вполне себе нормальный подход.


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
Bogdan2004
Дата 9.11.2012, 12:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 12.2.2008

Репутация: нет
Всего: нет



Цитата(MetalFan @ 8.11.2012,  22:00)
Bogdan2004, чем же он некрасивый? вполне себе нормальный подход.

Идея такая, есть соединение которое устанавливается в отдельном потоке. Хочется чтобы обрыв регистрировался событий от библиотеки, а не дергать по таймеру жив/не жив.
PM MAIL   Вверх
kami
Дата 9.11.2012, 13:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1806
Регистрация: 25.8.2007
Где: Санкт-Петербург

Репутация: 6
Всего: 72



Автоматическое оповещение корреспондента при закрытии сокета возможно только, если клиент и сервер на одном компе.
Иначе - только 
Цитата(MetalFan @  8.11.2012,  17:14 Найти цитируемый пост)
попробовать что-нибудь в него записать/из него прочитать. если свалится - значит закрыт уже.


PM MAIL WWW   Вверх
Bogdan2004
Дата 9.11.2012, 14:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 12.2.2008

Репутация: нет
Всего: нет



Цитата(kami @ 9.11.2012,  13:15)
Автоматическое оповещение корреспондента при закрытии сокета возможно только, если клиент и сервер на одном компе.
Иначе - только 
Цитата(MetalFan @  8.11.2012,  17:14 Найти цитируемый пост)
попробовать что-нибудь в него записать/из него прочитать. если свалится - значит закрыт уже.

в Indy это можно сделать, через события. В Synapse не получается. :(

PM MAIL   Вверх
MetalFan
Дата 9.11.2012, 18:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 14
Всего: 128



Bogdan2004, подозреваю, что в инди как раз по принципу:
Цитата(MetalFan @  8.11.2012,  17:14 Найти цитируемый пост)
попробовать что-нибудь в него записать/из него прочитать. если свалится - значит закрыт уже.




--------------------
There are always someone smarter than you...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0645 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.