Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как пользоваться UDP, Broadcast-ом [D6, D7, Win2k, WinXP]


Jim^sz ©   (2004-11-11 21:11:00) 

Привет всем, я делаю чат, и столкнулся с такой проблемой:
мне нужно послать UDP бродкастом, если ответа не получил стань сервером если получил ответ, то соедениться с сервером.


WinLamka   (2004-11-17 16:03:00) [1]

пошли мессху на броадкаст адрес и все... (255)


SkyNet   (2004-11-17 03:55:00) [2]

Здрвствуйте...
сталкивался с подобной проблеммой...
самый оптимальный вариант использовать функцию которая возвращает
количество сетевых интерфейсов на конкретной машине...
и по полученным данным формировать броадкаст...
который и будет указан в виде адреса назначения...


Jim^sz   (2004-11-16 21:36:00) [3]

Тест...


Knight   (2004-11-11 22:01:00) [4]


> Jim^sz ©   (11.11.04 21:11)

Зачем сервер-то делать? А если он выёдет из сети? Будешь назначать, на роль сервера, другого? А что в это время клиенты будут делать? Может проще весь чат на бродкасте замутить?


Verg   (2004-11-11 21:32:00) [5]

разреши сокету отсылать бродкаст

var
 enable : BOOL;

enable := TRUE;
setsockopt(s, SOL_SOCKET, SO_BROADCAST, pchar(@enable), sizeof( enable ));

Ну и отсылай бродкасты. Вопрос как это делать грамотно достаточно объемен. В первом же приближении просто отсылай датограммы sendto, где в качестве адресата указывай htonl( INADDR_BROADCAST ). На первое время хватит...


Наверх

Титульная страница Поиск, карта сайта Написать письмо