|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
12.03.2012, 13:00 | #1 |
Форумчанин
Регистрация: 17.11.2010
Сообщений: 262
|
Многопользовательский чат
Доброго времени суток. Работаю под XE. Есть проблема, нужно написать чат. TCP протокол не подходит, т.к. сервер надо создавать. Получается. что надо через UDP. Winsock нормально прикрутить не смог. Попробовал через Indy, получил ошибку IdUDPServer функция OnRead не создается, битая библиотека, не хватает файла IndySystem150.bpl. Нашел компоненту UdpSocket стандартную, но как с ней работать не нашел. Есть у кого файл IndySystem150.bpl? Или как работать с UdpSocket? Подскажите пожалуйста.
|
12.03.2012, 13:34 | #2 |
Форумчанин
Регистрация: 08.07.2010
Сообщений: 505
|
В чем проблема прикрутки Winsock?
Знающий не говорит, говорящий не знает (С) Лао Цзы
|
12.03.2012, 13:50 | #3 |
Форумчанин
Регистрация: 17.11.2010
Сообщений: 262
|
Читал тут.
Но тут опять, нужно указывать адрес сервера, а мне нужен широковещательный чат, без создания сервера. |
12.03.2012, 13:56 | #4 |
Форумчанин
Регистрация: 08.07.2010
Сообщений: 505
|
Тогда пользователи будут получать сообщения им не адресованные. Получиться каша.
Типа: прибор? 120! Что 120? Что прибор?
Знающий не говорит, говорящий не знает (С) Лао Цзы
|
12.03.2012, 13:59 | #5 | |
Форумчанин
Регистрация: 17.11.2010
Сообщений: 262
|
Чат общий, все что туда пишут, видят все. Личные сообщения не нужны.
Цитата:
Последний раз редактировалось Drugnir; 12.03.2012 в 14:05. |
|
12.03.2012, 14:22 | #6 |
Форумчанин
Регистрация: 08.07.2010
Сообщений: 505
|
Тогда адресом сервера будет широковещательный адрес типа 192.168.0.255 (на подсеть).Или адрес группы.
Знающий не говорит, говорящий не знает (С) Лао Цзы
|
12.03.2012, 14:23 | #7 |
Форумчанин
Регистрация: 08.07.2010
Сообщений: 505
|
Сокет только нужно будет настроить надлежащим образом для широковещательной рассылки.
Знающий не говорит, говорящий не знает (С) Лао Цзы
|
13.03.2012, 00:26 | #8 |
Форумчанин
Регистрация: 17.11.2010
Сообщений: 262
|
Т.е. сервер создавать у каждого пользователя? Или в клиент поставить широковещательный адрес, без создания самого сервера?
|
13.03.2012, 08:48 | #9 |
Форумчанин
Регистрация: 08.07.2010
Сообщений: 505
|
а сокет кто будет слушать в клиенте? На прием дейтаграмм? Еще и желательно в отдельном потоке, иначе recvfrom подвесит клиента до прихода сообщения. Причем лучше сделать так. Запускаешь поток, котором запускаешь еще поток для прослушки сокета и опроса флага завершения работы клиента.
Знающий не говорит, говорящий не знает (С) Лао Цзы
|
13.03.2012, 11:32 | #10 |
Форумчанин
Регистрация: 17.11.2010
Сообщений: 262
|
Т.е. мне у всех создавать сервер? В одном потоке будет сервер, который будет слушать и принимать, в другом клиент который будет отправлять. С компонентами полегче будет.
вот такой схемы мне нужно достичь Последний раз редактировалось Drugnir; 13.03.2012 в 12:18. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Многопользовательский чат с отправкой файлов | Drugnir | C++ Builder | 12 | 21.10.2011 12:22 |
многопользовательский сервер | Johnson | Работа с сетью в Delphi | 0 | 18.07.2011 00:07 |
Многопользовательский АРМ | Aleksey1989 | БД в Delphi | 6 | 15.06.2011 09:15 |
многопользовательский режим | Nastay | Помощь студентам | 1 | 04.04.2008 19:57 |
многопользовательский чат дельфи | ben95 | Помощь студентам | 8 | 02.02.2008 11:59 |