Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Общие вопросы .NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.04.2013, 16:16   #1
stalsoft
Форумчанин
 
Регистрация: 09.06.2011
Сообщений: 147
По умолчанию C# сеть

Привет. Не могу разобраться. Помогите.

Есть сервер. Сервер естественно прослушивает порт (порт тот, который свободный). То есть например:
запуск сервера сейчас - он выбрал порт 5555,
запуск еще одного экземпляра сервера - он выберет порт 5556, так как 5555 занят запущенным ранее сервером.

Вопрос.
Как сделать так, что бы клиент сам узнал, какие порты (пускай даже клиент и сервер запущены на одном компе) прослушивает сервер, то есть к каким подключаться именно?

Заранее спасибо.
У женщин чары образуются из стрингов;
А у программистов наоборот - стринги образуются из чаров;
stalsoft вне форума Ответить с цитированием
Старый 13.04.2013, 11:08   #2
Mixim
Форумчанин
 
Регистрация: 29.10.2009
Сообщений: 259
По умолчанию

Цитата:
Сообщение от stalsoft Посмотреть сообщение
Вопрос.
Как сделать так, что бы клиент сам узнал, какие порты (пускай даже клиент и сервер запущены на одном компе) прослушивает сервер, то есть к каким подключаться именно?
Если верно понимаю вопрос, то по-моему никак. Сам бы поступил примерно следующим образом: для серверной части программы выделил бы диапазон адресов, например с 5000 до 6000, и установил бы, что для установления соединения клиент должен отправить команду запроса, например "ACK", а сервер должен на нее как-то ответить; если ответ не пришел или является некорректным, то пробуем другой порт. Так будет наиболее рационально, а вообще, ни проще ли в параметрах приложения задать величину "Порт", которую пользователь может изменить и сохранить?
Из всех классических книг, посвященных программированию, ненавижу всего одну - русский перевод книги Роберта Седжвика-"Фундаментальные алгоритмы C++". Предпочитаю читать её в оригинале.
Mixim вне форума Ответить с цитированием
Старый 16.04.2013, 14:02   #3
stalsoft
Форумчанин
 
Регистрация: 09.06.2011
Сообщений: 147
По умолчанию

Цитата:
Сообщение от Mixim Посмотреть сообщение
Если верно понимаю вопрос, то по-моему никак. Сам бы поступил примерно следующим образом: для серверной части программы выделил бы диапазон адресов, например с 5000 до 6000, и установил бы, что для установления соединения клиент должен отправить команду запроса, например "ACK", а сервер должен на нее как-то ответить; если ответ не пришел или является некорректным, то пробуем другой порт. Так будет наиболее рационально, а вообще, ни проще ли в параметрах приложения задать величину "Порт", которую пользователь может изменить и сохранить?
я тоже об этом подумал сразу, но просто думал, что может есть что то не такое "костыльное")))

Спасибо)
У женщин чары образуются из стрингов;
А у программистов наоборот - стринги образуются из чаров;
stalsoft вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сеть prokazza Компьютерное железо 1 31.01.2012 16:58
wi-fi сеть Ckawest Компьютерное железо 3 20.12.2011 16:26
Сеть masha_prog Работа с сетью в Delphi 1 01.12.2011 12:20
сеть stupid C# (си шарп) 1 21.03.2011 12:01