Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# .NET
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C# Архиваторы и обработка файлов https://www.cyberforum.ru/csharp-net/thread124779.html
Уважаемые форумчане, может быть, кто-то может помочь с следующей проблемой: в данный момент я пишу архиватор на С#, если быть точнее реализирую Ziv-Lempel Alg. - LZ77. Вкратце опишу алгоритм: 1....
C# Работа с Хеш-таблицами c использованием HashTable
Требуется добавлять, извлекать и удалять элементы из Хеш-таблицы. В С# имеется встроенная функция HashTable вроде... Как ею пользоваться???
SqlDataReader и запрос Compute C#
Собственно как при помощи SqlDataReader извлечь данные полученные посредством выполнения запроса Compute? Вот запрос: SELECT sales.employees_id,employees_name,sales_price from sales left join...
C# Клавиатура Подскажите пожалуйста, как сделать так, чтобы при нажатии определенной клавиши на клавиатуре (например "z"), нажималась кнопка типа Button?:) https://www.cyberforum.ru/csharp-net/thread124758.html
C# Вычисление IP https://www.cyberforum.ru/csharp-net/thread124729.html
Напишите программу, которая будет по заданному IP адресу и длине маски подсети вычислять маску подсети, номер подсети и широковещательный адрес для этой подсети. Предусмотреть разделения числа по...
C# Массив и выборка чисел.
Нужно задать одномерный массив размеромностью функцией random , и сделать так что бы программа вывела на экран все числа двузначные которые начинаются с одинаковой цифры и которые заканчиваются на ...
Как сделать сдвиг вправо на координатной плоскости C#
Здравствуйте еще раз, дней 5 назад вы помогли описать класс треугольник (программа работает) пасибо большое, но мне она не очень понравилось преподу так вообще. Я попытался сделать сам посмотрите что...
C# Есть ли функция fabs() в С#? А еще вопрос почему не получается конвертировать строковый массив string mas = new string; в тип double, если допустим mas = 1, а не 1.0 ??? https://www.cyberforum.ru/csharp-net/thread124671.html
C# C# авторизация на сайте ucoz.ru https://www.cyberforum.ru/csharp-net/thread124655.html
Приветствую всех участников данного форума, первым делом хочу сказать - я не спаммер! Мне очень сильно нужно написать программу для произведения некоторых действий на сайте системы ucoz.ru, для...
C# класс Pen как в классе Pen можно управлять прозрачностью кисти? можно ли ее задавать с помощью какой-то переменной? Добавлено через 22 минуты Нужно нарисовать линию у которой можно изменять прозрачность,... https://www.cyberforum.ru/csharp-net/thread124634.html
TigerX2
1 / 1 / 0
Регистрация: 03.05.2010
Сообщений: 3
04.05.2010, 00:16  [ТС] 0

Как написать простой клиент-сервер

04.05.2010, 00:16. Просмотров 6598. Ответов 6
Метки (Все метки)

Ответ

Цикл, к сожалению, не помог. Клиент завис напрочь
То, что надо сделать цикл для приема сообщений вроде как теоретически понятно. Осталось узнать по какому условию делать этот цикл и в каком месте...

Добавлено через 15 минут
Вопрос решен.
Если кому интересно, сделано следующим образом:
Сервер:
C#
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
static void Main(string[] args)
        {
            StreamWriter streamWriter;
            StreamReader streamReader;
            NetworkStream networkStream;
            TcpListener tcpListener = new TcpListener(5555);
 
            tcpListener.Start();
            
            Console.WriteLine("Сервер запущен.");
            Console.WriteLine("IP-адрес: 127.0.0.1");
            Console.WriteLine("Порт: 5555");
            Console.WriteLine();
 
            Socket serverSocket = tcpListener.AcceptSocket();
            
            DirectoryInfo MyDirectory = new DirectoryInfo(@"C:\TestDir");
 
            try
            {
                if (serverSocket.Connected)
                {
                    Console.WriteLine("Server: Клиент принят.");
                    
                    networkStream = new NetworkStream(serverSocket);
                    streamWriter = new StreamWriter(networkStream);
                    streamReader = new StreamReader(networkStream);
                    
                    string ResultString = "";
                    
                    using (StreamWriter sw = new StreamWriter(@"C:\TestDir\TestFile.txt"))
                    {
                        foreach (var i in MyDirectory.GetFileSystemInfos())
                        {
                            ResultString = ResultString + i.FullName + "\r\n";
                            sw.WriteLine(i.FullName);
                        }
                        sw.WriteLine();
                        sw.WriteLine(DateTime.Now);
                        ResultString = ResultString + "\r\n" + DateTime.Now;
                    }
                    //Console.WriteLine(ResultString);
                    
                    streamWriter.WriteLine(ResultString);
                    streamWriter.Flush();
                    Console.WriteLine(streamReader.ReadLine());
                }
                if (serverSocket.Connected)
                    serverSocket.Close();
                Console.Read();
            }
            catch (SocketException j)
            {
                Console.WriteLine(j);
            }
        }
Клиент:
C#
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
public void StartClient()
        {
            TcpClient tcpClient;
            NetworkStream networkStream;
            StreamReader streamReader;
            StreamWriter streamWriter;
            
            try
            {
                tcpClient = new TcpClient("localhost", 5555);
                
                networkStream = tcpClient.GetStream();
                
                streamReader = new StreamReader(networkStream);
                streamWriter = new StreamWriter(networkStream);
                
                streamWriter.WriteLine("Client: ГОТОВ");
                streamWriter.Flush();
                
                RecieveDataList.Items.Add(streamReader.ReadToEnd());
            }
            catch (SocketException i)
            {
                RecieveDataList.Items.Add("Ошибка: " + i);
            }
        }


Вернуться к обсуждению:
Как написать простой клиент-сервер
1
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.05.2010, 00:16

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Как красиво организовать клиент-сервер
Здравствуйте! Пишу приложение: сервер бесконечно ждет подключения нового клиента, при подключении...

Клиент-сервер. Как прослушать порт telnet'ом?
Вроде разобрался с тем, как организовать распределенное приложение (клиент-сервер). По этой...

Клиент-сервер. Клиент не принимает данные
Здравствуйте о светлейшие умы сего мира! Я работаю над одним проектом, а именно написание...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.