Доброго времени суток. Пытаюсь наладить передачу сообщения от клиента другому клиенту через сервер(использую TcpListener/TcpClient). Сообщение содержит в себе информацию о получателе(ip или id клиента, не важно). Проблем с доставкой сообщения серверу нет. Я это делаю так: Клиент:
int port = 8005;
TcpClient client = new TcpClient(ServerIp.Text, port);
Byte[] data = System.Text.Encoding.ASCII.GetBytes("Message " + "ClientIp.Text " + Input.Text);
NetworkStream stream = client.GetStream();
stream.Write(data, 0, data.Length);
stream.Close();
client.Close();
Получение сообщение на сервере и его дальнейшая обработка:
while (true)
{
Console.Write("\nWaiting for a connection... ");
ThreadPool.QueueUserWorkItem(ObrabotkaZaprosa, server.AcceptTcpClient())
counter++;
Console.Write("\nConnection №" + counter.ToString() + "!");
}
Обработка:
static void ObrabotkaZaprosa(object client_obj)
{
Byte[] bytes = new Byte[256];
String data = null;
TcpClient client = client_obj as TcpClient;
data = null;
NetworkStream stream = client.GetStream();
int i;
while ((i = stream.Read(bytes, 0, bytes.Length)) != 0)
{
data = System.Text.Encoding.ASCII.GetString(bytes, 0, i);
Console.WriteLine(Convert.ToString(client.Client.RemoteEndPoint));
Console.WriteLine(data);
string[] splitedData = data.Split(' ');
if (splitedData[0] == "Message")
{
//Здесь должна быть отправка сообщения другому клиенту
}
}
client.Close();
}
То есть суть в том, что клиент должен получить сообщение с пометкой, что это именно сообщение для передачи клиенту и с айпи клиента, а дальше само сообщение. Как отправить сообщение обратно я понять могу, но как это сообщение отправить другому клиенту я что-то никак не могу допереть. Как мне следует это сделать? Спасибо
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Имеется программа на C# с базой данных (MS SQL), использую Visual Studio 2015Что делать? app
Здравствуйте! На главном окне у меня присутствует авторизация, при успешном её прохождении появляется новое окно, а главное скрывается:
Появился следующий вопрос: можно ли каким-то образом привязать PasswordBox к SecureString, следующим образом: