![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Получить реальный порт UDP-сервера
Cyrax © (2006-10-26 17:24:00)Помогите "начЕнающему" "ламеру" получить реальный порт, выделенный UDP-серверу (TIdUDPServer) осью. DefaultPort = 0. Провернуть всё это желательно только с помощью класса TIdUDPServer...
Сергей М. (2006-10-31 13:20:00) [1]
> мне же нужен порт TCP-сервера
Ты что придуряешься-то ?!
Он будет один-единственный, взятый из Bindings[0] !
Если там тобой указан Any (что эквивал-но 0), то какой система выделит, такой ты и прочитаешь из Bindings[0].Port в ран-тайм !
Если ты вообще явно не формировал Bindings-список, то сервер перед активацией создаст дифолтный Bindings[0] и вкатает в Bindings[0].Port значение IdTCPServer.DefaultPort !
p.s.
Читать описание Winsock.Bind до полного просветления !
> Не люблю читать
Что ты тут кривляние устроил, "люблю, не люблю" ?
Тоже мне, петрушка)
Чужой код - неисчерпаемая кладезь знаний !
Не хочешь учиться ? Так и нехрена тебе в программистах делать !
Cyrax (2006-10-31 12:57:00) [2]Как видишь, не один и тот же.
Не один и тот же - это если Port - порт клиента, мне же нужен порт TCP-сервера (не UDP !)...
Исходники-то когда сподобимся учиться читать ?
Не люблю читать исходники чужого кода...
Сергей М. (2006-10-31 12:22:00) [3]
> Cyrax © (31.10.06 11:33) [25]
Как видишь, не один и тот же.
Исходники-то когда сподобимся учиться читать ?
Cyrax (2006-10-31 11:33:00) [4]Сергей М. © (30.10.06 11:08) [24]
А на какой серверу раскидывать свой Port на все биндинги, когда он один и тот же для каждого оного...
з.ы. насчёт комедии: не слышно меня только когда я в отключке (я о физическом состоянии)...
Anatoly Podgoretsky © (30.10.06 10:55) [23]
> ...
Ты хочешь это знать, так ты определение дал, перемотай ветку назад.
Способствует росту популярности... Жду апплодисментов...
Сергей М. (2006-10-30 11:08:00) [5]
> Cyrax © (30.10.06 10:26) [22]
Ты не устал ломать комедию ?
Тебе ж сказали - после успешной активации сервера в списке Bindings находятся объекты (один или более) класса TIdSocketHandle, каждый из которых имеет св-во Port, значение которого как раз и есть то что тебе нужно.
Anatoly Podgoretsky (2006-10-30 10:55:00) [6]
> я идиот ?
Ты хочешь это знать, так ты определение дал, перемотай ветку назад.
Cyrax (2006-10-30 10:26:00) [7]Про "дальше": TIdTCPServer.Bindings. ... - вот что такое "дальше"...
Про "биндинги": сервер в данный момент времени может не быть соединён ни с одним клиентом...
Про "порт": я идиот ?
Anatoly Podgoretsky (2006-10-30 10:15:00) [8]А про дальше ты не спрашивал и я в догадках, а что дальше то? Видимо у тебя есть какие то предположения, но ты ими не поделился. На всякий случай порт это Word и для хранения требует два байта.
Cyrax (2006-10-30 10:12:00) [9]А дальше ?
Anatoly Podgoretsky (2006-10-30 10:08:00) [10]bindings
Cyrax (2006-10-30 10:05:00) [11]Сейчас пока TCP...
Anatoly Podgoretsky (2006-10-30 10:04:00) [12]И bindings, каковых может и не быть...
Palladin (2006-10-30 09:56:00) [13]так UDP или TCP?
Anatoly Podgoretsky (2006-10-30 09:55:00) [14]Сдается мне, что это нас дурачат.
Cyrax (2006-10-30 09:50:00) [15]Хватит меня дурачить...
"Необходимо получить реальный порт, выделенный TCP-серверу"
Anatoly Podgoretsky (2006-10-30 09:47:00) [16]А говорил bindings, каковых может и не быть...
Но я тебя успокою, UDP это протокол без соединений.
Cyrax (2006-10-30 09:17:00) [17]Соединений сервера с клиентами...
Anatoly Podgoretsky (2006-10-30 09:13:00) [18]Чего может не быть?
Cyrax (2006-10-30 08:59:00) [19]В теме хотел сказать TIdTCPServer, а не TUDPServer...
Необходимо получить реальный порт, выделенный TCP-серверу (TIdTCPServer) осью. DefaultPort = 0. Провернуть всё это желательно только с помощью класса TIdTCPServer... Нашёл только bindings, каковых может и не быть...
Желательно сегодня... В течении 3 часов !
Anatoly Podgoretsky (2006-10-27 00:07:00) [20]> посему не судить...
А вот на это не расчитывай, никаких исключений для тебя не будет.