Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   мессенджер на C# (http://forum.oszone.net/showthread.php?t=132467)

Surround 19-02-2009 12:11 1043063

мессенджер на C#
 
Привет!
стоит задача написания некоторого специфического мессенджера, функционал которого будет со временем наращиваться, на C#, работающий по принципу вроде icq.
Проблема еще и в том, что выделить под это сервер с платформой win не представляется возможным, сервер - linux.
Есть ли какие-нибудь примеры/документации создания службы обмена сообщениями на c#?

еще вопрос в догонку, чтобы не мутить новую тему: возможна ли такая компиляция программ на .net, чтобы включить в нее все необходимые для работы библиотеки framework'a, дабы обойтись без установки последнего для обеспечения работы программы?

Surround 19-02-2009 13:48 1043149

или примелы просто локального чата

Delirium 20-02-2009 01:19 1043666

Посмотрите это

Цитата:

Цитата Surround
возможна ли такая компиляция программ на .net, чтобы включить в нее все необходимые для работы библиотеки framework'a, дабы обойтись без установки последнего для обеспечения работы программы? »

http://www.intuit.ru/department/pl/v...sharp/9/7.html

Framework ставить придется по любому, даже если вы в проект включите и принудительно будете копировать необходимые библиотеки.

Admiral 20-02-2009 03:05 1043699

Surround доброго времени суток.
Про протокол ICQ в помощь линки в темах
Отправка сообщений на ICQ
Спецификация протокола ICQ
Если на сервере предполагается использование ОС Линукс то что б не очень не привычно серверную часть можно писать на Mono
Если покажется что технология весьма отличается от C# (сам Mono не юзал) и окажется что нужно будет по сути учить заново, то я бы посоветовал под Никсами использовать C\C++. Все равно ведь что-то потребуется учить, тогда почему бы не родное Никсам, ведь gcc почти в каждом дистрибутиве, в отличии от Mono который только планируют с весны поставлять с некоторыми популярными дистрибутивами.

Да, в каждом SDK к .Net Frameworks присутствуют примеры использования сокетов, и на C# в том числе.
Если тянуть SDK проблематично предлагаю ознакомится с примерами к книгам
Pro .NET 1.1 Network Programming, Second Edition если не эта версия используется, то не страшно что 1.1, главное понять принцыпи
Practical .NET 2.0 Networking Projects

Если б, а так - увы это послужило тем, что платформа не получила изначально своей популярности. Ведь в 2002 году если б какая нибудь прога попросила у пользователя скачать порядка 20 Мб для запуска, то кому она б была нужна с такими прожорливыми, по тем временам, трафик требованиям. Да сейчас времена изменились, часть исходного кода доступна для загрузки (Microsoft делает доступным исходный код .NET Framework), но это врятли поможет осуществить такую .Net независимость.

Surround 21-02-2009 12:41 1044766

Спасибо!
Здесь, однако, более в другом вопрос стоит. Не требуется написание клиента именно под icq-систему. Нужно создать свою, корпоративную, систему обмена сообщениями. Принцип ICQ взят за пример, как наиболее удачная идея реализации. Так вот тут стоит вопрос, каким образом осуществляется такой быстрый обмен данными между пользователями? Я в том смысле, что если сеть, скажем, включена через шлюзы и роутеры, то сам сервер сообщений, находящий в интернете, добраться до какой-то локальной машины в корпоративной сети и сказать, мол, тебе пришло сообщение, не может, верно же? Он упрется в шлюз. То есть клиентская программа посылает с какой-то периодичностью запросы на сервер "а не пришло ли мне чего"?
Или я немного не так понял схему работы?

Zetoke 21-02-2009 15:24 1044896

оффтоп, но все таки...не смог удержаться
Surround, а зачем писать что-то новое, если можно использовать уже изобретенное?
можно ведь поставить локальный сервер Jabber...
Клиентов под него много (Квип инфиум, Miranda, Psi), причем все настраивается очень хорошо...

Или же надо именно свой проект сделать?

Surround 21-02-2009 15:50 1044914

Master Fess, я так и знал, что Вы это скажате. Дело в том, что это - сообщения, - всего лишь основа для большой системы учета и мониторинга состояния компьютеров и общения пользователей с администраторами

Surround 22-02-2009 20:24 1045824

вот как, например, сервер ICQ держит соединение с клиентами?

Admiral 23-02-2009 09:30 1046193

Surround есть такая штука как IServerd и то что по сабжу выделить под это сервер с платформой win не представляется возможным, сервер - linux только на руку. А весь остальной функционал системы учета и мониторинга состояния компьютеров реализовать на стороне клиента и в других демонах (сервисы в Никсах) на стороне сервера. Ведь если один из компонентов системы будет падать другие будут ещё работать. Не даром svchost в Win32 организованна разделение функциональности и этот процесс запускают под разными параметрами.
Вот ещё мануал по настройки Своего сервера под ICQ.


Время: 16:26.

Время: 16:26.
© OSzone.net 2001-