Entwickler-Ecke

Netzwerk - UDP Receive


marcel04 - Mi 08.07.15 16:05
Titel: UDP Receive
hallo com,


ich sende einen Broadcost an meine Slaves die darauf hin zum Broadcost etwas zurück senden,

ich will nun Abfangen was und wer das schickt?
mit meinem Code bekomm ich das nicht hin bzw was passt nicht?


C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
private void StartListening()
{
    //udp.Client.Bind();
    ar_ = udp.BeginReceive(Receive, new object());
    udp.Client.ReceiveTimeout = 50000;
    if (IPback.Length > 1)
        SendtoTable();
}

private void Receive(IAsyncResult ar)
{
    UdpClient client = new UdpClient();
    Messageback = "";
    IPback = "";

    IPEndPoint ip = new IPEndPoint(IPAddress.Broadcast, PORT_NUMBERReceive);

    byte[] bytes = udp.EndReceive(ar, ref ip);
    string message = Encoding.ASCII.GetString(bytes);
    Console.WriteLine("From {0} received: {1} ", ip.Address.ToString(), message);

    Messageback = message;
    IPback = ip.Address.ToString();

    StartListening();
}

?

mfg

Moderiert von user profile iconTh69: C#-Tags hinzugefügt
Moderiert von user profile iconTh69: Topic aus C# - Die Sprache verschoben am Mi 08.07.2015 um 17:12


Th69 - Mi 08.07.15 17:04

Hallo und :welcome:

schau dir mal das Beispiel zu UdpClient.EndReceive [https://msdn.microsoft.com/de-de/library/system.net.sockets.udpclient.endreceive%28v=vs.110%29.aspx] an.
Du verwendest anscheinend zwei verschiedene IPEndPoint-Objekte, einmal beim UdpClient-Konstruktor und einmal beim EndReceive.


marcel04 - Do 09.07.15 07:19