Форум: "Сети";
Текущий архив: 2004.04.04;
Скачать: [xml.tar.bz2];
ВнизИ снова multicast Найти похожие ветки
← →
Sla © (2004-01-22 17:15) [0]Народ! Пожалуйста, подкиньте пример работы с мультикастами на Delphi! Я уже 3й месяц ищу и пытаюсь сделать, все никак не выходит. Выручайте!
Или может хотя бы подскажите немного? основные api я для этого знаю, но они в на си... а перевести я немогу ;((
заране спасибо
← →
Verg © (2004-01-22 17:56) [1]По-конретнее бы.
Что именно не выходит.
Чтиал ли это:
http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/q131/9/78.asp&NoWebCo ntent=1
← →
Sla © (2004-01-23 17:35) [2]Читал... не понятно :((
А конкретно не выходит подключение к группе и ловля пакетов...
тоесть даже не то что бы не выходит, незнаю как сделать... там в примерах на си написано ;(
← →
Alex Konshin © (2004-01-23 23:02) [3]Насчет перевода: мой unit winsock2 уже скачал?
← →
Sla © (2004-01-24 04:45) [4]>Насчет перевода: мой unit winsock2 уже скачал?
Нет... расскажите подробнее пожалуйста!
← →
Alex Konshin © (2004-01-24 10:20) [5]Зачем подробнее, потом еще будут обвинять меня в нескромности...
:-)
http://home.earthlink.net/~akonshin/index.htm
← →
Verg © (2004-01-24 14:03) [6]1. Создаешь сокет. Сокет должен быть либо SOCK_DGRAM либо SOCK_RAW.
sock = socket(AF_INET, SOCK_RAW, <Нужный протокол>);
2. Обязательно биндишь его (bind) на нужный порт для DGRAM или на нулевой для RAW.
3. Подписываешь его на MULTICASTFillchar(Mreq, sizeof(Mreq), 0);
mreq.imr_multiaddr.s_addr := mcast_addr;// 224.0.0.9, например
mreq.imr_interface.s_addr := if_addr; //212.212.212.212, например
setsockopt( sock,IPPROTO_IP, IP_ADD_MEMBERSHIP,
@Mreq,sizeof(Mreq));
Где Mreq - это структура типа
TIPMreq = packed record
imr_multiaddr : TInAddr; // Адрес мультикаста
imr_interface : TInAddr; // Адрес сетевого интерфейса (сетевой карточки)
end;
Ну и все, собственно, читаешь/пишешь из/в него как обычно ты это делаешь сокетом.
← →
Verg © (2004-01-24 14:07) [7]Для полного счастья можно
val := 0;
len := sizeof(val);
setsockopt (sock, IPPROTO_IP, IP_MULTICAST_LOOP, @val, len);
Это для того, чтобы отправленные тобой на мультикастовый адрес датаграммы не прилетали тебе же самому (эхоподавление :))).
← →
Rouse_ © (2004-01-24 20:02) [8]> [7] Verg © (24.01.04 14:07)
Я бы посоветовал написать Вам статью...
Дело в том что вопросы по данному сабжу возникают постоянно...
С моей стороны почти закончена статья по мэйлслотам (первое место по вопросам в сетях)...
Если готовы содрудничать... адреса знаете...
← →
Verg © (2004-01-26 11:40) [9]
> Rouse_ © (24.01.04 20:02) [8]
Может быть... Но, скорее нет, чем да...
Про это уже очень хорошо написано в книгах по сетевому программированию. Поэтому, такая статья будет просто рефератом или даже плагиатом....
Нет ни времени, и, если чесно, ни желания переписывать то, что уже написано и неоднократно.
← →
Sla © (2004-01-27 04:45) [10]Спасибо большое ... буду пытатся.
Но многое все таки не понятно ;(
Может пример таки есть у кого нить?
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2004.04.04;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.035 c