Посылка данных в порт

Общие вопросы программирования, алгоритмы и т.п.

Модератор: Модераторы

dionic
новенький
Сообщения: 90
Зарегистрирован: 17.06.2009 21:00:08

Посылка данных в порт

Сообщение dionic »

Всем привет.
Народ подскажите пожалуйсто.
Вот у меня есть приложение сервер, построенное на сокетах, использовал библиотекку synapse. Допустим сервер слушает порт 3340. Есть клиент, который коннектится к серверу. Возможно ли после коннекта писать данные прямо в этот порт? И каким образом? Дойдут ли они до клиента? Или без использования структуры TSocket это невозможно?
Аватара пользователя
Attid
долгожитель
Сообщения: 2589
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E
Контактная информация:

Сообщение Attid »

так ты кого писать собрался ? клиента ? тогда как приконектишься сразу и пиши в порт если там аутентификация не требуется.
dionic
новенький
Сообщения: 90
Зарегистрирован: 17.06.2009 21:00:08

Сообщение dionic »

А каким образом писать данные в порт то? И если например на данный порт 2 клиента законнекились, то при записи в порт данных кому они отправятся?
Mr.Smart
долгожитель
Сообщения: 1796
Зарегистрирован: 29.03.2008 00:01:11
Откуда: из леса!

Сообщение Mr.Smart »

dionic
Смотри пример из Synapse demo\httpserv
Аватара пользователя
Attid
долгожитель
Сообщения: 2589
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E
Контактная информация:

Сообщение Attid »

dionic
ну ты бы показал как именно ты конектишься, может быть и вопросы бы отпали.



ну вот пришел Mr.Smart и испортил все выходные :D
dionic
новенький
Сообщения: 90
Зарегистрирован: 17.06.2009 21:00:08

Сообщение dionic »

Mr. Smart вам как всегда респект, обязательно гляну, может подчерпну что интересного. Attid спс за ответы.
Вообще пошел другим путём, просто передаю нормер сокета другому экземпляру класса TTCPBlockSocket а там выставляю его свойства Socket и передаю данные.
Mr.Smart
долгожитель
Сообщения: 1796
Зарегистрирован: 29.03.2008 00:01:11
Откуда: из леса!

Сообщение Mr.Smart »

dionic писал(а):Вообще пошел другим путём, просто передаю нормер сокета другому экземпляру класса TTCPBlockSocket а там выставляю его свойства Socket и передаю данные.

Так и делается.
dionic
новенький
Сообщения: 90
Зарегистрирован: 17.06.2009 21:00:08

Сообщение dionic »

Ну значит у меня будет всё работать как нужно, надеюсь =)

Mr Smart, подскажите пожалуйсто еще по одному вопросику. Вы видимо просматривали классы библиотеки synapse. Так вот, пытаюсь под linux получить ip адрес компа вызовом функции ResolveName, а получаю 127.0.0.1 хотя компьютер подключён к сети. Если тоже самое проделать в винде то там нормально выдает адрес в локалке.
В чем может быть проблема? Рылся в исходниках synapsa но так и не понял...Помогите плиз...
Или может есть какие нибудь другие способы узнать ip адрес ?
Mr.Smart
долгожитель
Сообщения: 1796
Зарегистрирован: 29.03.2008 00:01:11
Откуда: из леса!

Сообщение Mr.Smart »

Попробуйте ResolveNameToIP и просмотрите весть список IP.
dionic
новенький
Сообщения: 90
Зарегистрирован: 17.06.2009 21:00:08

Сообщение dionic »

Пробывал, тоже самое приходит только 1 ip и это 127.0.0.1.
Мне кажется если у меня будет внешний ip то функция выдаст мне его, а вот ip в локальной сети не хочет.
Mr.Smart
долгожитель
Сообщения: 1796
Зарегистрирован: 29.03.2008 00:01:11
Откуда: из леса!

Сообщение Mr.Smart »

На форуме поднималась тема на счёт определения HostName правда с использованием Indy. Может там какие идеи есть.
з.ы. я с данными проблемами (пока) не сталкивался т.к. ещё свой проект где требуется определение ip адресов не переводил на Linux.
dionic
новенький
Сообщения: 90
Зарегистрирован: 17.06.2009 21:00:08

Сообщение dionic »

Ясно ну ладно всё равно спасибо за помощь попробую порытся в indy может чего там найду...
Аватара пользователя
Attid
долгожитель
Сообщения: 2589
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E
Контактная информация:

Сообщение Attid »

а в /etc/рosts ИП прописан ?
dionic
новенький
Сообщения: 90
Зарегистрирован: 17.06.2009 21:00:08

Сообщение dionic »

Может etc/hosts ? Залез туда и обнаружил только 127.0.0.1 для для своего имени компа. Хы-хы Спасибо аттид.

Нда. Чет всё равно не получается. Даже исправил ip в hosts ,а он всё равно выводит 127.0.0.1.

Народ ну подскажите как ip узнать под linux.
Аватара пользователя
Attid
долгожитель
Сообщения: 2589
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E
Контактная информация:

Сообщение Attid »

ifconfig =)

Добавлено спустя 9 минут 17 секунд:
после исправления хостс пробыл функцию ResolveNameToIP ?
Ответить