![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
сокеты и ip
Галинка © (2008-06-27 12:30:00)пробую написать программку, которая свяжется через сокет с удоленным компом. При создании сокета, его конструктору передается два параметра: адрес и порт. Адрес можно передать либо именем (т.е. www.delphimaster.ru), либо сразу целым. Но у меня есть только ip. Как это преобразовать?
clickmaker (2008-06-30 17:15:00) [1]> т.е. в приложении должно быть обязательно два сокета, один
> которые простой, и второй - срверный?
то есть?
я всегда думал, что на сервере - серверный, на клиенте - клиентский.
Цесарю - цесарево, слесарю - слесарево
Anatoly Podgoretsky (2008-06-29 17:57:00) [2]В приложение должно быть столько сокетов, сколько требуется, минимум один.
Галинка (2008-06-29 17:50:00) [3]т.е. в приложении должно быть обязательно два сокета, один которые простой, и второй - срверный?
umbra (2008-06-29 14:35:00) [4]
> Всегда ли необходим ServerSocket?
Что собственно имеется в виду? Серверный сокет - это сокет, который ожидает подключений. И он необходим, чтобы установить соединение
Галинка (2008-06-29 13:04:00) [5]тогда еще один вопрос. Всегда ли необходим ServerSocket?
umbra (2008-06-29 02:30:00) [6]
> Является ли "хорошим тоном, программирование соединения
> через сокеты в отдельном потоке?
>
Это наилучший тон для сервера - каждый клиент в своем потоке
Галинка (2008-06-28 23:59:00) [7]umbra © (28.06.08 14:22) [12]
в смысле? Просто пишу в яве Socket clSock = new Socket (<host>, <port>) и все. Я уже как бы на удаленной машине.
ПыСы: нашла я методом тыка, что надо "удаленной машине" послать сообщение выход. Тогда она снова ожидает подключения. Но, теперь появилась другая трабла. Не могу понять какя из двух машин быстрее, но принимающая не может принять всю передаваемую строку. Она считывает из буфера макс. два символа, а потом вероятно буфер перезаписывается. Приходится вставлять sleep. Является ли "хорошим тоном, программирование соединения через сокеты в отдельном потоке?
umbra (2008-06-28 14:22:00) [8]
> он может и дисконнектится, но принимающий комп не переходит
> обратно в режим ожидания.
а чего он должен туда переходить? сервер же может и не узнать, что клиент отключился. Вот и ждет. Вообще неплохо бі узнать, с пмощью чего ві коннектитесь и дисконнектитесь :)
grisme (2008-06-27 21:38:00) [9]может сервер немного неправильный? :)
wl (2008-06-27 14:53:00) [10]может не обновляется индикация состояния? что если вообще инет отрубить?
Галинка (2008-06-27 14:36:00) [11]Когда на подключено, светится надпись
... waiting for TCP/IP-Client
когда подключено ее нет.
Так вот, когда я закрываю сокет комментарий этот не появляется вновь. Поэтому я думаю, что система занята.
clickmaker (2008-06-27 14:26:00) [12]> но принимающий комп не переходит обратно в режим ожидания
а в каком он режиме остается?
Галинка (2008-06-27 14:12:00) [13]umbra © (27.06.08 13:32) [6]
он может и дисконнектится, но принимающий комп не переходит обратно в режим ожидания.
umbra (2008-06-27 13:32:00) [14]
> не а... Не дисконнектится (((
>
а откуда известно, что не дисконнектится?
Галинка (2008-06-27 13:26:00) [15]umbra © (27.06.08 13:07) [4]
не а... Не дисконнектится (((
umbra (2008-06-27 13:07:00) [16]сокет.close :)
Галинка (2008-06-27 13:06:00) [17]спасибо. Нашла вроде бы. Даже соединилась. А как теперь разъединиться?
umbra (2008-06-27 12:50:00) [18]inet_addr из winsock
Zeqfreed (2008-06-27 12:41:00) [19]inet_aton() converts the Internet host address cp from the standard
numbers-and-dots notation into binary data and stores it in the struc-
ture that inp points to. inet_aton() returns non-zero if the address
is valid, zero if not.