0

C# を使用してクライアント サーバー ネットワークを作成しています。クライアントは正常に作成されましたが、サーバーに問題があります。サーバーにメッセージをブロードキャストすると、他のクライアントにも送信されるはずです。問題は、サーバーもメッセージを取得すると、それを別のメッセージと見なし、同じメッセージを何度も送信する無限ループを作成することです。サーバー以外でブロードキャストできますか?

public void serverThread()
{
    while (true)
    {
        IPEndPoint RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);
        Byte[] receiveBytes = udpClient_rec.Receive(ref RemoteIpEndPoint);
        string returnData = Encoding.ASCII.GetString(receiveBytes);
        if (returnData.StartsWith("broad"))
        {
            UdpClient udpClient_send = new UdpClient();
            IPEndPoint RemoteIpEndPoint1 = new IPEndPoint(IPAddress.Broadcast, 8400);  
            //can i use something else here instead of broadcast to send it to everyone except myself(server)?
            udpClient_send.EnableBroadcast = true;
            udpClient_send.Send(receiveBytes, receiveBytes.Length, RemoteIpEndPoint1);
            udpClient_send.Close();
        }
        this.SetText(RemoteIpEndPoint.Address.ToString() + ": " + returnData.ToString());
        this.SetText2(RemoteIpEndPoint.Address.ToString());
    }
}
4

0 に答える 0