Проблема с UdpClient (разрешается только одно использование адреса сокета) - C#

Узнай цену своей работы

Формулировка задачи:

Есть приложение, которое отсылает содержимое файла на указанный порт:
using (UdpClient server = new UdpClient(port))
                    {
                        string file;
                        Byte[] bytes;
 
                        server.Connect(ip, port);
                        TextReader reader = new StreamReader(fileName);
                        file = reader.ReadToEnd();
                        reader.Close();
 
                        // Посылаем
                        UTF8Encoding encoder = new UTF8Encoding();
                        bytes = encoder.GetBytes(file);
                        server.Send(bytes, bytes.Length);
                    }
Есть приложение, которое получает содержимое:
using (UdpClient client = new UdpClient(port))
                    {
                        bytes = client.Receive(ref remoteIpEndPoint);
                        file = ecoder.GetString(bytes); // file - string
                    }
После нажатия клавиши "Ожидать данные" на втором приложении, я не могу отправить на него данные при помощи первого, так как ловлю ексепшн с сообщением, что адрес сокета уже занят. Как быть?

Решение задачи: «Проблема с UdpClient (разрешается только одно использование адреса сокета)»

textual
Листинг программы
using (UdpClient server = new UdpClient(port))
                    {
                        string file;
                        Byte[] bytes;
 
                        server.Connect(ip, port);
                        TextReader reader = new StreamReader(fileName);
                        file = reader.ReadToEnd();
                        reader.Close();
 
                        // Посылаем
                        UTF8Encoding encoder = new UTF8Encoding();
                        bytes = encoder.GetBytes(file);
                        server.Send(bytes, bytes.Length);
                        server.Client.Dispose(); 
                    }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.5 из 5
Похожие ответы