![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
как лучше организовать поиск? [D5, Win2k]
Fixxxer © (2003-05-12 22:59:00)Уважаемые мастера. У меня вопрос на примере локального чата. Как в локальном чате лучше всего организовать поиск пользователей чата в сети. Т.е. как из своего приложения узнать кто ещё находится в сети с подобным приложением.
Может кто посоветует как это лучше сделать?
Заранее благодарю.
Fixxxer (2003-05-15 18:35:00) [1]Может кто кинет ссылочку где можно почитать про этот бродкастинг?
Digitman (2003-05-15 15:28:00) [2]
> Fixxxer
Тогда выход один - бродкастинг с использованием протоколов, его поддерживающих, например, NetBIOS, UDP .. (в MS-сети лучше NetBIOS)
savva (2003-05-15 15:04:00) [3]
> У меня что-то в 2000-ой винде долго ищет компы в сетке.
> Что только не перепробовал. Это не подходит.
не пугайся - ты не одинок.. как возможное решение - поиск компов делай в отдельном потоке - фоновом..
Fixxxer (2003-05-15 11:31:00) [4]
> Tonny (14.05.03 17:35)
> 1. Сделать один сервер, коннектиться к нему при запуске
> приложения.
Не. Это не подходит. В локалке нет сервака, а приложение-сервер на одну из машин не хочется ставить, не постоянно они включены.
> а) каждую минуту, по таймеру:
>- получить список всех компьютеров сети;
У меня что-то в 2000-ой винде долго ищет компы в сетке. Что только не перепробовал. Это не подходит.
> 3. Завести у каждого клиента список нужных ему контактов
> с указанием IP-адресов.
Этого я и хотел избежать.
> servs ©
> А лучше не занимайся ерундой ;-)
Ну уж очень хотелось бы для нашей локалки сделать свой чат :)
servs (2003-05-14 19:45:00) [5]Tonny прав, напиши на какой арзитектуре построен чат, тогда можно говорить в чем то.
Если только в мыслях написание чата, то делай вариант 1 (от Тонни). А лучше не занимайся ерундой ;-) В дельфи в экзамплах есть пример чата, насколько я помню.
Попробуй что-то интересное написать, РАдмин например.
Tonny (2003-05-14 17:35:00) [6]1. Сделать один сервер, коннектиться к нему при запуске приложения.
2. Если чат типа "точка - точка", т.е. каждое приложение одновременно и сервер и клиент, то тут проблематичнее. варианты:
а) каждую минуту, по таймеру:
- получить список всех компьютеров сети;
- попытаться сконнектиться с ними по порту вашего приложения.
б) Возможно получится отправкой широковещательных пакетов (не пробовал)
вариант 2 - не очень хороший, т.к. работать будет только в одноранговой сети, в большой сети с маршрутизаторами могут быть проблеммы.
3. Завести у каждого клиента список нужных ему контактов с указанием IP-адресов. Запустился клиент - разослал всем по очереди абонентам, что он на линии.