1 / 1 / 0
Регистрация: 27.01.2010
Сообщений: 21
1

Клиент-серверное приложение: как написать реакцию сервера на каждое сообщение от клиента

02.05.2012, 22:21. Показов 1735. Ответов 4
Метки нет (Все метки)

В общем пытаюсь разобраться с сетью в C#, условная задача написать сервер - который осуществляет обмен, и клиент - 2 запущенных клиента обмениваются сообщениями.
Вот наброски сервера (пока под одного клиента)
C#
1
2
3
4
5
6
7
8
9
10
11
//сервер
int port = 12345;
IPAddress ip= IPAddress.Parse("127.0.0.1");
TcpListener server = new TcpListener(localAddr,port); 
server .Start();
Console.WriteLine("The server is started...");
TcpClient client = l.AcceptTcpClient();
NetworkStream NWS = cl.GetStream();
BinaryReader R = new BinaryReader(NWS); //принятие
BinaryWriter W = new BinaryWriter(NWS); //отправка
Console.WriteLine(R.ReadString());
Вот клиент
C#
1
2
3
4
5
6
7
8
9
10
//клиент
int port = 12345; 
string adres = "127.0.0.1";
client = new TcpClient(adres, port);
NetworkStream NWS = client.GetStream();
R = new BinaryReader(NWS); //поток для принятия данных
W = new BinaryWriter(NWS); //поток для отправки данных
W.Write("efgsrg");
W.Write("rgergh");
W.Write("rgerg");
Проблема в том, что я не понимаю как написать реакцию сервера на каждое сообщение от клиента, в данной реализации он принимает первое сообщение и все, конечно можно дописать еще две строки в сервер
C#
1
2
Console.WriteLine(R.ReadString());
Console.WriteLine(R.ReadString());
И тогда он примет еще два сообщения, но я это какой то бред, если я буду постоянно слать с клиента сообщения (организую отправку из текстбокса) то мне придется писать кучу этих строк в сервер, причем их количество неизвестно. Как возможно это реализовать?
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.05.2012, 22:21
Ответы с готовыми решениями:

Клиент-Серверное приложение: как отсоединиться от сервера
Клиент на C# Сервер на ANSI-C Сервер подаёт структуры размером в 38байт. Клиент Получает...

Как написать клиент-серверное приложение?
Хочу написать такую программу. Есть сервер у меня на компютере и есть клиент на другом компютере....

Как написать клиент-серверное приложение
Привет всем, хочу написать сервер.Пересмотрел кучу уроков и статей и т.д. ,но там нет подробного...

Как написать клиент-серверное приложение
Доброго времени суток. Создал аналогичную тему в раздете про си++ билдер, но там что-то тишина,...

4
98 / 81 / 16
Регистрация: 14.01.2011
Сообщений: 438
03.05.2012, 11:42 2
В цикле,не?)
C#
1
2
3
4
5
6
while (true)
            {
                Console.Write("> ");
                msg = Console.ReadLine();
                writer.WriteLine(msg);
            }
1
1 / 1 / 0
Регистрация: 27.01.2010
Сообщений: 21
04.05.2012, 10:45  [ТС] 3
NowMatrix спасибо! Я думал это решение подойдет для одного клиента и он попадет в бесконечный цикл, но если клиенты в разных потоках то работает! Спасибо!
0
98 / 81 / 16
Регистрация: 14.01.2011
Сообщений: 438
04.05.2012, 12:31 4
iukash, всегда пожалуйста)
0
2 / 2 / 0
Регистрация: 17.06.2011
Сообщений: 32
04.05.2012, 18:20 5
Вот статья, где достаточно подробно и очень понятно написано как сделать клиент-сервер на Шарпе.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.05.2012, 18:20
Помогаю со студенческими работами здесь

Как написать клиент-серверное приложение
Как сделать так чтоб программа обменивалась данными с другой програмой через глобальную сеть....

Как написать простое клиент-серверное приложение
Объясните как написать эл. приложение, которое просто отправляет какое нибудь сообщение. Не могу...

Как написать простое клиент-серверное приложение
дайте ссылки, литературу в которой можно будет прочитать о том, как создать онлайн проект на visual...

Как написать клиент-серверное приложение для управления COM портом
Здравствуйте, Написал в Visual Studio 2010 программу для работы с COM портом - отправка...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru