Вопрос № 22131: Здравствуйте , Эксперты.
Я пишу чат для локальной сети на Борланде си++ 6
Перепробовав все методы , я пришел к выводу , что я могу написать чат только на серверной основе.
Хотелось бы .. написать чат не на серверной основе ... т.е. никому...
Вопрос № 22.131
Здравствуйте , Эксперты.
Я пишу чат для локальной сети на Борланде си++ 6
Перепробовав все методы , я пришел к выводу , что я могу написать чат только на серверной основе.
Хотелось бы .. написать чат не на серверной основе ... т.е. никому бы не приходилось запускать сервер!... Поддобных чатов Много : Vypress CHat, FChat
etc...
Подскажите ) .. заранее благодарен
Отправлен: 13.06.2005, 17:49
Вопрос задал: ДимооН :) (статус: 1-ый класс)
Всего ответов отправлено: 4
Отвечает: Jadd
Здравствуйте, ДимооН :)!
откровенно говоря, сомнения берут, что там совсем нету серверов. Просто каждый клиент, видимо, одновременно и сервер для приема подключений, и клиент для отправки сообщений. Легче и лчше писать с сервером. Легче админить и проще реализовывать протоколы. В сетях с малым количеством машин нужно будет при запуске (или с интервалом) опрашивать сеть на предмет наличия отсутсвия присутсвия. :) Короче на предмет присутсвия кого-то, кто поддерживает общение с твоей вот программой. Наверное так.
--------- Hakuna matata
Ответ отправил: Jadd (статус: 10-ый класс)
Отправлен: 13.06.2005, 17:56 Оценка за ответ: 5
Отвечает: Voituk Alexander
Здравствуйте, ДимооН <img src=http://img.mail.ru/ru/btn/smile.gif>!
Что ты имеешь ввиду - серверная основа? Типа сервер управляет сообщениями?
Все равно прога должна висеть на всех компах. Или придется писать прогу типа DCOM сервера.
Здесь клиент позволяет запустить сервер на удаленном компе автоматически. Но это довольно серьезная штука.
Ответ отправил: Voituk Alexander (статус: 8-ой класс)
Отправлен: 13.06.2005, 18:00 Оценка за ответ: 4
Отвечает: SackTap
Здравствуйте, ДимооН :)!
Определенно, сервер все равно будет. Только твою программу можно будет написать как сервер+клиент. К примеру, поступить можно так:
Создаешь в программе слушающий и отправляющий сокеты (для начала лучше через UDP). Слушающий сажаешь к примеру на 2005 порт, а отправляющий на 0 (любой свободный) - и шлешь любые данные по указанному ip-шнику на 2005 порт из сети (можно реализовать сканирование сети на предмет запущенных чатов). А если на слушающий приходят какие-либо данные, ты фиксируешь ip-шник, с которого они пришли и открываешь в программе какой нибудь message window (ну как в аське), который будет свой для каждого ip.
Воот.
--------- =)
Ответ отправил: SackTap (статус: 10-ый класс)
Отправлен: 13.06.2005, 19:16 Оценка за ответ: 5
Отвечает: Гриценко Юрий Алексеевич
Здравствуйте, ДимооН <img src=http://img.mail.ru/ru/btn/smile.gif>!
Тут вариантов несколько:
1 - Broadcast-рассылки, но в большинстве локалок они будут идти до первого маршрутизатора
2 - глобальный сервер с инфой о раьотающих клиентах, а далее самому рассылать пакеты по адресам
3 - тоже самое, что и 2 но адреса юзвери ручками писать будут
--------- Программирование - не способ заработка, а спсоб по-иному взглянуть на мир.