private void Broadcast_ReceivedPacket(object sender, ReceivedUDPPacketEventArgs e) { string msg = string.Empty; IPEndPoint ep = IP.QueryRoutingInterface(IPAddress.Broadcast); if (ep.Address != null) { msg = ep.Address.ToString() + "|" + this.ManagedServer.Port.ToString(); } else { msg = "CAN_NOT"; } this.broadcast.Send(System.Text.Encoding.UTF8.GetBytes(msg), e.RemoteIPEndPoint); }
private void Broadcast_ReceivedPacket(object sender, ReceivedUDPPacketEventArgs e) { string msg = System.Text.Encoding.UTF8.GetString(e.ReadableBuffer.GetBytes()); if (msg.Contains("|")) { string[] epInfo = msg.Split('|'); IPAddress serverIp = null; IPAddress.TryParse(epInfo[0], out serverIp); int serverPort = 0; int.TryParse(epInfo[1], out serverPort); if (serverPort != 0 && serverIp != null) { this.OnDiscoveredServer(serverIp, serverPort); } } }