![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| alir |
|
||||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 383 Регистрация: 19.3.2005 Репутация: 2 Всего: 4 |
Итак, я написал однопользовательский чат, т.е. общатся могут только клиент и сервер. Все это организовано следущим образом:
На сервере запускается слушатель - форма с кнопкой, запускающей чат (а после форма скрывается). Кнопка определяется так:
Т.е. слушатель ждет пока приконнектится клиент. Кнопка соединится по IP:
Слушатель, приняв клиента создает форму ответа (и создает для него сетевой поток):
Предача данных выгядит следущ образом: пишем в поток:
ну и принимаем соотвественно. Проблема такая: нужно создать многопользовательский чат, что была возможность принять несколько клиентов и общались бы они одновремменно! Помогите плз! Или подскажите где про это можно почитать в инете: вообще про чаты (или можно примеры) или работа с сетью. Это сообщение отредактировал(а) alir - 26.3.2005, 00:14 |
||||||||
|
|||||||||
| Gazon |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 128 Регистрация: 9.1.2005 Репутация: 3 Всего: 8 |
А в чем проблема? Пишешь бесконечный цикл, где будешь принимать соединение, после того как соединение принято, передаешь сокет с принятым соединением на обработку.
Т.е. примерно так:
Так получился многопользовательский сервер. Т.е. коллекция Clients будет содержать соединенные с клиентами сокеты - для каждого клиента в коллекции Clients будет соединенный с ним сокет. Затем нужна какая-нибудь общая переменная для хранения всех записей в чате. И с этом переменной будут работать соединенные с клиентами сокеты в коллекции Clients. --------------------
Чем больше узнаешь, тем больше не знаешь, но до истины всегда можно добраться. |
|||
|
||||
| alir |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 383 Регистрация: 19.3.2005 Репутация: 2 Всего: 4 |
Где ее хранить, на сервере?
Так как это связать? |
||||
|
|||||
| alir |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 383 Регистрация: 19.3.2005 Репутация: 2 Всего: 4 |
2Gazon:
Кстати, код не работает - почему то виснет. |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |