Как послать широковещательный UDP пакет

{codecitation class=»brush: pascal; gutter: false;» width=»600px»}

Смотрит ламер на папку «Удаленный доступ к сети», и думает: «Как он ещё тут, когда его уже удалили?»

procedure TMainForm.FormCreate(Sender: TObject);

var

Init: TWSAData;

SockOpt: BOOL;

Sock: TSocket;

Target: TSockAddrIn;

begin

WSAStartup($101,Init);

Sock:=Socket(PF_INET,SOCK_DGRAM,IPPROTO_UDP);

SockOpt:=TRUE;

SetSockOpt(Sock,SOL_SOCKET,SO_BROADCAST, PChar(@SockOpt),SizeOf(SockOpt)) ;

Target.sin_port:=htons(8167); //номер порта

Target.sin_addr.S_addr:=INADDR_BROADCAST;

Target.sa_family:=AF_INET;

SendTo(Sock,Data,DataBytes,0,Target,SizeOf(Target));

WSACleanup;

end;

{/codecitation}

Добавить комментарий