![]() |
Indy UDP: TidSocketHandle
Hallo;
es geht um den Indy-UDP-Server. Möchte gerne feststellen von wem die Nachricht kommt, die ich über UDP erhalte (OnUDPRead). Habe mir gedacht, das ist einfach Abinding.PeerIP und Abinding.PeerPort. Aber Abinding.PeerPort ist 1255, obwohl ich nur die Ports 20000, 20001, 20010 und 20011 verwende :gruebel: Abinding.PeerIP stimmt hingegen (127.0.0.1). Wie kann ich den echten Clientport feststellen? Danke schonmal; Tubos. |
Re: Indy UDP: TidSocketHandle
Hallo,
wenn ich mich recht entsinne wird der local-Port einer Clientverbindung, also der abgehende Port, vom Betriebssystem ausgewürfelt. Hast du mal statt ABinding.Port statt ABinding.PeerPort abgefragt? |
Re: Indy UDP: TidSocketHandle
Ja, bei Abinding.port kommt der Port raus über den ich die Nachrichten empfange (also der Serverport).
Zitat:
|
Re: Indy UDP: TidSocketHandle
Was du einstellst ist nur der sercerseitige Port, das kann ein ganz anderer als der clientseitige sein.
|
Re: Indy UDP: TidSocketHandle
Jetzt verstehe ich es :D
Außerdem war in meinem Code ein großer Denkfehler drinnen: Ich habe die Nachricht an den Clientport geschickt, das kann aber gar nicht funktionieren weil bei UDP nur Server etwas empfangen können. Das heißt dann wohl, dass ich den Port entweder mitschicken oder von vornherein festlegen muss. Danke! Tubos |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:41 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz