Здравствуйте, chap1, Вы писали:
C>Как регистрировать, клиентов на сервере, причем каждый клиент имеет уникальный идентификатор(Имя, пароль, номер)
мда... тяжелый сучай....
Суть проблемы... охото написать подобие аськи... вопрос как написать правельно сервер... ну например подключается юзер с логином "1", в серевер он записвается как в онлайне, дале подключается еще один он помещается в серврер в тот же список... а потом любой юзер может этот список запросить... вопрос как это релизовать программно?
C>Как регистрировать, клиентов на сервере, причем каждый клиент имеет уникальный идентификатор(Имя, пароль, номер)
Сервер хранит список подключенных в текущий момент клиентов. Подключается новый клиент — добавляешь в список. Клиент отключается — удаляешь из списка. Для конкретной задачи список можно сделать в виде Hashtable с ключем по номеру.
S>вопрос как это релизовать программно?
Не совсем понятно, что тебе конкретно нужно... Вообще-то обмен данными между клиентом и сервером — это азы сетевого программирования.
Если интересует, как в принципе это сделать на новых технологиях, то почитай про .NET Remoting.
Здравствуйте, Zugma, Вы писали:
S>>вопрос как это релизовать программно? Z>Не совсем понятно, что тебе конкретно нужно... Вообще-то обмен данными между клиентом и сервером — это азы сетевого программирования. Z>Если интересует, как в принципе это сделать на новых технологиях, то почитай про .NET Remoting.
ну вот прям от туда...
using System;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Tcp;
namespace RemotingSamples {
public class Sample {
public static int Main(string [] args) {
TcpChannel chan = new TcpChannel(8085);
ChannelServices.RegisterChannel(chan);
RemotingConfiguration.RegisterWellKnownServiceType
(Type.GetType("RemotingSamples.HelloServer,object"),
"SayHello", WellKnownObjectMode.SingleCall);
System.Console.WriteLine("Hit <enter> to exit...");
System.Console.ReadLine();
return 0;
}
}
}
Тут мы зарегистрировали канал, и сказали какой обект отправлять по просьбе клиента... вот вопрос где тут на сервере хранить какие объекты запрошены??? и как все им передать ссылку на объект (допустим тот же List, тех кто в онлайне, ну спсиок логинов которые были переданы этим объектам???)
Зарание спасибо за ответ!
Здравствуйте, Zugma, Вы писали:
C>>Как регистрировать, клиентов на сервере, причем каждый клиент имеет уникальный идентификатор(Имя, пароль, номер) Z>Сервер хранит список подключенных в текущий момент клиентов. Подключается новый клиент — добавляешь в список. Клиент отключается — удаляешь из списка. Для конкретной задачи список можно сделать в виде Hashtable с ключем по номеру.
Спасибо за помощь, подскажи, пожалуйста, как твой вариант реализовать програмно.
Здравствуйте, Sergik666, Вы писали: S>мда... тяжелый сучай.... S>Суть проблемы... охото написать подобие аськи... вопрос как написать правельно сервер... ну например подключается юзер с логином "1", в серевер он записвается как в онлайне, дале подключается еще один он помещается в серврер в тот же список... а потом любой юзер может этот список запросить... вопрос как это релизовать программно?
Проще всего использовать XMPP/Jabber — все это там уже есть и не изобретать велосипед.
http://www.coversant.net/ — .NET SDK для написания XMPP приложений, там же есть бесплатный сервер на 100 юзеров. Если надо больще существует куча опен-сурс серверов.