Hello Martin,
Here is a small example:
procedure TFoo.FUDPDataAvailable(Sender: TObject; Error: word);
var
Buffer: array [0..1023] of char;
Len: integer;
Src: TSockAddrIn;
SrcLen: integer;
begin
SrcLen := SizeOf(Src);
Len := TWSocket(Sender).ReceiveFrom(@Buffer, SizeOf(Buffer), Src, SrcLen);
if Len < 0 then
Exit;
Buffer[Len] := #0;
{$ifdef DEBUG}
WriteLn('UDP packet received from ', inet_ntoa(Src.sin_addr));
WriteLn('Data ', Buffer);
---
Rgds, Wilfried [TeamICS]
http://www.overbyte.be/eng/overbyte/teamics.html
http://www.mestdagh.biz
Friday, October 17, 2008, 04:47, Xealot wrote:
> Hello!
> I would like to know if its possible to get the address that a UDP packet
> comes from.
> I am making an application that will send multiple packets to different
> hosts using SendTo and I will be receiving replies from them.
> I have no power to change the protocol, so I need to know if its possible to
> find out the address each packet arrived from.
> Currently, I use bytesread := sock.Receive(@data, SizeOf(data)); to receive
> the data.
> where sock is a TWSocket object. sock.Addr will not work here.. :(
> Thanks for taking your time,
> - Martin E.
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be