[an error occurred while processing this directive]
Delphi и udp-сокеты...
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Артём 24 июля 2006 г. 02:15

Нужно вести обмен по UDP с удалённым IP-адресом.
Имеется следующий код:


procedure ReceiveUdp;
var
ws: TWSAData;
fromaddr: sockaddr_in;
fromaddr_size: integer;
Listener: TSocket;
LocalHost: TSockAddrIn;
Buff: array[0..2000] of byte;

begin

WSAStartup($101, ws);
listener:=socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
localhost.sin_addr.S_addr:=htonl(INADDR_ANY);
localhost.sin_family:=AF_INET;
localhost.sin_port:=htons(32001);
i := bind(Server.listener, Server.localhost, sizeof(Server.localhost));
if (i<>0) then begin
while (True) do begin
fromaddr_size := sizeof(fromaddr);
i:=recvfrom(listener, buff, sizeof(buff), 0, fromaddr, fromaddr_size);
if ((i>0) and (i <> SOCKET_ERROR) and (i // пакет принят
// какие-то действия
end;
end;

end;


Программа по непонятным мне причинам не работает: принимаются данные только от
адреса 127.0.0.1. Подскажите в чём ошибка.

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Rambler's Top100 Рейтинг@Mail.ru
Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание