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

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

Проблема c UDP [D7, WinXP]


petro ©   (2004-04-12 17:31:00) 

Что тут может быть не правильно:
//fill to addr
 Addr.sin_family:=AF_INET;
 Addr.sin_port:=htons(8167);
 Addr.sin_addr.S_addr:=inet_addr('10.1.1.3');
// create socket and connect
 S:=socket(AF_INET,SOCK_STREAM,IPPROTO_UDP);

 if connect(S,Addr,sizeof(Addr))=0 then writeln('Open Port 8167.') else
  writeln('Error ',WSAGetLastError);
// close
 WSACleanup;


Verg   (2004-04-12 18:39:00) [1]

Тогда см.

> Digitman ©   (12.04.04 17:35) [1]


Но connect тебе не даст реальной картины.
Connect для UDP нужен всего лишь для того, чтобы потом не писать постоянно sendto, а можно было бы просто send.
Для того, чтобы проверить обслуживает ли кто-нибудь такой-то UDP порт на заданном хосте, кроме всего чего ты уже и так наметил сделать (с учетом попрваки на SOCK_DGRAM), нужно отправить "пробную" датаграмму.
Почитай здесь, может понятнее будет:

http://www.delphimaster.ru/cgi-bin/forum.pl?id=1080241768&n=4


petro   (2004-04-12 18:29:00) [2]

UDP


Verg   (2004-04-12 18:13:00) [3]

Какой порт-то? UDP или TCP?


petro   (2004-04-12 18:05:00) [4]

а что добавить???
мне нужно просто узнать открыт порт или нет.


Polevi   (2004-04-12 17:48:00) [5]

и connect выбросить


Digitman   (2004-04-12 17:35:00) [6]

SOCK_DGRAM !


Наверх

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