Cоздать клиент-серверное приложение для тестирования - C#

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

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

Нужно создать клиент-серверное приложение для тестирования, например клиент подключается к серверу сервер предлагает пройти тест, как реализовать

Решение задачи: «Cоздать клиент-серверное приложение для тестирования»

textual
Листинг программы
  1. using System;
  2. using System.Text;
  3. using System.Net;
  4. using System.Net.Sockets;
  5.  
  6. namespace SocketClient
  7. {
  8.     class Program
  9.     {
  10.         static void Main(string[] args)
  11.         {
  12.             try
  13.             {
  14.                 SendMessageFromSocket(11000);
  15.             }
  16.             catch (Exception ex)
  17.             {
  18.                 Console.WriteLine(ex.ToString());
  19.             }
  20.             finally
  21.             {
  22.                 Console.ReadLine();
  23.             }
  24.         }
  25.  
  26.         static void SendMessageFromSocket(int port)
  27.         {
  28.             // Буфер для входящих данных
  29.             byte[] bytes = new byte[1024];
  30.  
  31.             // Соединяемся с удаленным устройством
  32.  
  33.             // Устанавливаем удаленную точку для сокета
  34.             IPHostEntry ipHost = Dns.GetHostEntry("localhost");
  35.             IPAddress ipAddr = ipHost.AddressList[0];
  36.             IPEndPoint ipEndPoint = new IPEndPoint(ipAddr, port);
  37.  
  38.             Socket sender = new Socket(ipAddr.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
  39.  
  40.             // Соединяем сокет с удаленной точкой
  41.             sender.Connect(ipEndPoint);
  42.  
  43.             Console.Write("введите свою фамилию: ");
  44.             string message = Console.ReadLine();
  45.  
  46.             Console.WriteLine("Сокет соединяется с {0} ", sender.RemoteEndPoint.ToString());
  47.             byte[] msg = Encoding.UTF8.GetBytes(message);
  48.  
  49.             // Отправляем данные через сокет
  50.             int bytesSent = sender.Send(msg);
  51.  
  52.             // Получаем ответ от сервера
  53.             int bytesRec = sender.Receive(bytes);
  54.  
  55.             Console.WriteLine("\nОтвет от сервера: {0}\n\n", Encoding.UTF8.GetString(bytes, 0, bytesRec));
  56.  
  57.             // Используем рекурсию для неоднократного вызова SendMessageFromSocket()
  58.             if (message.IndexOf("<TheEnd>") == 1)
  59.                 SendMessageFromSocket(port);
  60.  
  61.             // Освобождаем сокет
  62.             sender.Shutdown(SocketShutdown.Both);
  63.             sender.Close();
  64.         }
  65.     }
  66. }

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


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

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

14   голосов , оценка 3.786 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы