Страница: 1 |
Приложение состоит из двух частей: клиента и сервера. При запуске сервер начинает прослушивать определенный порт (Winsock1.Listening). При запросе на соединение с клиента socketID передается в Winsock2, а Winsock1 продолжает листенинг. После сеанса передачи данных Winsock2 закрывается (Winsock2.Close). При повторном запросе на соединение с клиента выполняется та же процедура передачи сокета, но соединение не происходит, а на клиенте winsock переходит в состояние resolving host и возникает ошибка address in use. Что я не так делаю?
хм... я вот что то не до конца понимаю цель использования такой структуры... что быдет когда есть одно соединение переданное второму винсокету и в этот же момент к первому кто то "достукивается" еще... он уже не сможет передать соединение второму и юзера тогда "пошлют"? Что мешает тебе использовать массив винсокетов? WinSock1(0), WinSock1(1), WinSock1(2)... Тогда и проблемы этой не будет.... Будет тока ограничение максимум 255 подключений одновременно, но думаю тебя устроит? Знаешь, что ядумаю... Не надо снова изобретать велосипед и делать страшные конструкци. Зайди на vbasic.km.ru поищи в исходниках coolchat12. В этом примерчике очень хорошо рассмотрена инициатива использования winsock вплоть от чата на двоих и до проверки/отправки почты. Стоит помотреть! Удачи! 2Silent_Sky Извиняюсь, может я не так сформулировал проблему. Вопрос не в том, какие сокеты пользовать. Вопрос: как вернуть сокет после сеанса передачи данных в исходное состояние, чтобы он мог снова принять подключение? 2Виталиум Спасибо, посмотрю! Страница: 1 |
Вопрос: Winsock
Добавлено: 16.01.03 15:30
Автор вопроса: AntNZ
Ответы
Всего ответов: 3
Номер ответа: 1
Автор ответа:
Silent_Sky
ICQ: 134433
Вопросов: 25
Ответов: 44
Профиль | | #1
Добавлено: 16.01.03 15:48
Номер ответа: 2
Автор ответа:
Виталиум!
Вопросов: 25
Ответов: 52
Web-сайт:
Профиль | | #2
Добавлено: 16.01.03 22:45
Номер ответа: 3
Автор ответа:
AntNZ
Вопросов: 3
Ответов: 4
Профиль | | #3
Добавлено: 16.01.03 23:01