Форум: "Начинающим";
Текущий архив: 2011.10.30;
Скачать: [xml.tar.bz2];
ВнизTNMUdp Найти похожие ветки
← →
R_R (2011-07-12 04:50) [0]Для отправки требует порт. Но ведь порт зависит (оказывается) от запущенной программы, то есть чтобы мне послать что-то, мне предварительно нужно узнать порт, который ещё к тому же может меняться от одного запуска программы к другой. Нельзя ли сделать соединение просто по ip адресу?
← →
Servy © (2011-07-12 06:00) [1]
> Нельзя ли сделать соединение просто по ip адресу?
Представьте, что вы - операционная система. У вас запущено полтора десятка приложений, и все из них любят пообщаться по сети с другими приложениями. Тут, неожиданно, приходит udp пакет по сети. Какому из приложений его отдавать на обработку?
Очевидно, что нужно ввести какой-то идентификатор, чтобы разделить пакеты, направленные приложению А, от пакетов, направленных приложению Б. Таким идентификатором и служит порт, который "слушает" приложение.
> мне предварительно нужно узнать порт, который ещё к тому
> же может меняться от одного запуска программы к другой.
Ваше клиентское приложение (отправляющее данные) откуда-то должно узнать ip адрес сервера, куда отправлять запрос (из конфигурационного файла, из БД, от пользователя, и много других вариантов). Логичным выглядит оттуда же выяснять и порт на сервере, который слушает "серверное" приложение и по которому ждет данных.
← →
Сергей М. © (2011-07-12 09:10) [2]Настоятельно рекомендую пока не поздно отказаться от TNMUdp - он кривой и давным-давно уже не поддерживается разработчиками.
Отличная альтернатива ему - TUDPBlockSocket из состава Synapse
http://www.ararat.cz/synapse/doku.php/download
← →
sniknik © (2011-07-12 09:23) [3]> Отличная альтернатива ему - TUDPBlockSocket из состава Synapse
кстати тоже не поддерживается... третий год как, судя по дате последней версии. или там все идеально, и развивать нечего?
p.s. понятно лучше чем TNMUdp который наверно уже 10 лет не поддерживается, но все же.
← →
Сергей М. © (2011-07-12 09:43) [4]
> или там все идеально, и развивать нечего?
Развивать может что-то и найдется ..
А вот по поводу "идеальности" - идеальным, конечно, ничто не бывает, но концепция, алгоритмы и код либы вылизаны авторами на вполне достойном внимания уровне. В либе все достаточно просто и наглядно для понимания, нет явных излишеств, в отличие от индейского пакета. Ну и кросплатформенность тоже немаловажный фактор..
Одно лишь слегка огорчает - кое-какие антивирусы из ряда широко известных упорно обзывают синапсов код шпионским)
← →
Anatoly Podgoretsky © (2011-07-12 09:58) [5]> R_R (12.07.2011 04:50:00) [0]
Протокол UDP без портов не работает.
Ты бы ну хоть что то про сети почитал, а то хоть стой, хоть падай.
← →
Anatoly Podgoretsky © (2011-07-12 09:59) [6]> Сергей М. (12.07.2011 09:43:04) [4]
Они шпионо фобы
← →
Сергей М. © (2011-07-12 10:13) [7]
> Anatoly Podgoretsky © (12.07.11 09:59) [6]
Приходилось даже так извращаться - оформлять все что касалось Синапса в отдельной дин.либе, жать ее nspack"ом, заталкивать в ресурсы приложения, а в рантайм извлекать либу и стартовать/пользовать ее прямо в памяти процесса приложения.. Злобный Аутпост тут же умылся и Заказчик, почему-то упорно не желавший добавлять прогу в список исключений, остался при этом довольным)
← →
Плохиш © (2011-07-12 10:55) [8]
> порт, который ещё к тому же может меняться от одного запуска
> программы к другой.
Программа при каждом запуске меняет порт?
Вот это я понимаю - крютой дерьмокодер ваял.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2011.10.30;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.004 c