Hallo,
ich habe einen TIdUDPServer und bei diesem kommen als Beispiel 2 Anfragen rein.
Über
Delphi-Quellcode:
procedure OnUDPRead(AThread: TIdUDPListenerThread; AData: TBytes;
ABinding: TIdSocketHandle);
besser gesagt ABinding, bekomme ich die PeerIP und PeerPort des Clienten und kann sie auseinander halten.
Nun werden Daten aufbereitet und dann zum Client zurückgeschickt. Dies passiert aber nicht mehr in der OnUDPRead.
Jedoch kann es sein, dass die Aufbereitung von Client2 schneller ist als Client1. Ich muss also jeden Clienten jederzeit Antworten können.
Ich habe nun versucht über TIdUDPServer.Bindings.Count das Binding herauszufinden wo PeerIP und PeerPort zusammen passen. Dies geht aber nicht so richtig, denn bei 2 Clients findet er den 1. Client/Binding nicht mehr.
Wie sendet man UDP Daten zurück? Vielleicht doch über TIdUDPClient?
Wenn über TIdUDPClient, was für Port/
IP soll hier eingestellt werden? Das vom ServerBinding oder die Wirkliche
IP/Port des Servers?