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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.01.2010, 14:49   #11
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Нет. Ты наверное не понял
Смотри. Я имел ввиду что при запуске твоя программа сканирует сеть на наличие уже запущенных таких же программ.
Если ничего не найдено, значит она запустилась первая, и пусть берет на себя функции сервера, если такие программы существуют, она посылает им запрос "Кто из них сервер".

Если она стала сервером, то начинает прослушивать порт.
При подключении другой программы, она передает ей ответ "Я сервер" и ставит ее в список подключенных.

Теперь если она отключается - на первый адрес в списке посылает просьбу взять на себя серверные обязанности. Если с адреса ответили согласием - пересылает текушие настройки, а та прога которая согласилась настроийки принимает, и выбрав из них список уже подключенных клиентов, рассылает им сообщение "Переподключитесь ко мне"

Это один из возможных сценариев.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.01.2010, 14:54   #12
начинающий кодер
только учусь!
Форумчанин
 
Аватар для начинающий кодер
 
Регистрация: 08.02.2009
Сообщений: 124
По умолчанию

Тогда вот такой вопрос как проверить сеть на наличие таких же запущенных программ?пробовать подключаться к определенному порту каждой машины в сети?
«Я знаю, что ничего не знаю, но многие не знают и этого».
начинающий кодер вне форума Ответить с цитированием
Старый 22.01.2010, 15:05   #13
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
как проверить сеть на наличие таких же запущенных программ?
Например через TIdUDPClient - IdUDPClient1.Broadcast('Кто здесь?',245);
Тогда не забудь прикрутить к проге TIdUDPServer.

А вообще, зачем тебе сервер? У тебя же простой чат.
Сделай его наподобие SEChat, где либо сообщения посылаются через IdUDPClient1.Broadcast, либо используется TCPMulticast. И не парься с серверной частью.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.01.2010, 15:11   #14
начинающий кодер
только учусь!
Форумчанин
 
Аватар для начинающий кодер
 
Регистрация: 08.02.2009
Сообщений: 124
По умолчанию

Udp же не дает гарантии что пакет 100% дойдет до адресата? Но я попробую.спасибо.
«Я знаю, что ничего не знаю, но многие не знают и этого».
начинающий кодер вне форума Ответить с цитированием
Старый 22.01.2010, 16:01   #15
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Udp же не дает гарантии что пакет 100% дойдет до адресата?
Не дает. Но зато он прост в обращении.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Delphi. Локальный чат Puzz1e Помощь студентам 2 04.06.2009 15:06
Элементарный чат на delphi Pavelok Работа с сетью в Delphi 3 16.05.2009 22:49
чат в Delphi MoZG1987 Работа с сетью в Delphi 1 06.04.2009 12:05
чат в Delphi GlobalError Работа с сетью в Delphi 2 25.11.2007 19:06