Форум программистов, компьютерный форум CyberForum.ru

возможно ли реализовать клиент и сервер на разных машинах в одной ЛВС? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
arist
0 / 0 / 0
Регистрация: 14.02.2011
Сообщений: 100
02.05.2011, 10:27     возможно ли реализовать клиент и сервер на разных машинах в одной ЛВС? #1
есть клиент - СОМ-объект.
есть сервер - СОМ-объект.
клиент передаёт серверу HWND окна, которое есть родитель.
сервер должен создать дочернее окно и делать в нём что хочет, в том числе получать сообщения (WM_xxx).
когда это происходит на одной машине всё понятно.
возможно ли реализовать клиент и сервер на разных машинах в одной ЛВС?
в таком случае, насколько я понимаю, по сети должны передаваться сообщения WM_xxx, а обратно - реакция сервера (рисование, например).
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.05.2011, 10:27     возможно ли реализовать клиент и сервер на разных машинах в одной ЛВС?
Посмотрите здесь:

C++ Клиент-сервер
клиент-сервер C++
C++ Клиент - сервер
Двумерный вектор из разных типов - возможно? C++
клиент-сервер приложение передача потокового видео на сервер C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
boombastik
7 / 7 / 0
Регистрация: 13.02.2007
Сообщений: 1,255
02.05.2011, 21:41     возможно ли реализовать клиент и сервер на разных машинах в одной ЛВС? #2
зачем серверу HWND окна с другой машины? он все равно ничего сделать с этим не сможет, а в чем собственно вопрос? что реализовать в одной ЛВС? передачу сообщений между сервером и клиентом?
arist
0 / 0 / 0
Регистрация: 14.02.2011
Сообщений: 100
03.05.2011, 09:04  [ТС]     возможно ли реализовать клиент и сервер на разных машинах в одной ЛВС? #3
нужно реализовать систему с расширяемыми функциональными возможностями путём подключаемых модулей в виде СОМ-объектов. по моему замыслу на клиентов (более 100 машин) ставится... э-э-э короче клиентская часть системы (в виде СОМ-объекта), которая не требует частого обновления, она просто отыскивает сервер и пользуется им.
сервер - это некоторый главный СОМ-объект + набор расширений в виде СОМ-объектов.
смысл - чтобы не было гемороя при каждом обновлении расширений, они обновляются только на сервере.
а ещё сервер с его расширениями должен находиться на машине вместе с SQL server, чтобы запросы к базе шли не через сеть.

т.е. класика - это клиент отвечает за визуализацию, а сервер за подготовку данных. в моём случае нужно, чтобы и за визуализацию отвечал сервер.
boombastik
7 / 7 / 0
Регистрация: 13.02.2007
Сообщений: 1,255
06.05.2011, 01:12     возможно ли реализовать клиент и сервер на разных машинах в одной ЛВС? #4
собираетесь слать картинки в виде битмапов с сервера на клиента? а события со стороны пользователя отправлять на сервер, где они будут анализироваться и в виде ответа отправляться обновленное изображение? и как это будет выглядеть, когда будет необходима активная прорисовка графики, например тот же элемент управления как ComboBox в вашем случае становится очень сложным элементом?
arist
0 / 0 / 0
Регистрация: 14.02.2011
Сообщений: 100
08.05.2011, 09:59  [ТС]     возможно ли реализовать клиент и сервер на разных машинах в одной ЛВС? #5
Да... у меня теже вопросы...
Просто я почитал по DCOM литературу, и в ней написано, что обычный СОМ-объект может стать DCOM-объектом без всяких там... даже INPROC_SERVER (с помощью суррогата).
но про мой вопрос там ничего нет...
значит пойдём другим путём.
boombastik
7 / 7 / 0
Регистрация: 13.02.2007
Сообщений: 1,255
08.05.2011, 22:13     возможно ли реализовать клиент и сервер на разных машинах в одной ЛВС? #6
Ну COM и ActiveX Controls это не совсем одно и то же, первое - общая технология для реализации interoperability, второе - базируясь на первом, предоставляет возможность разработки графических компонентов, которые можно использовать в различных приложениях, COM можно обернуть в DCOM, и даже ActiveX Controls я думаю не составит большой проблемы, но нужно быть готовым к тому что последние будут отображаться на сервере, а не на клиентах, так как тут уже вступает в силу не технология COM, а конкретная реализация объектов.

Если вам интересно мое мнение, то я бы пошел классическим путем: уровень представления на стороне клиента, все остальное включая DAL и Business Logic на стороне сервера, реализованные в виде DCOM.
arist
0 / 0 / 0
Регистрация: 14.02.2011
Сообщений: 100
09.05.2011, 09:33  [ТС]     возможно ли реализовать клиент и сервер на разных машинах в одной ЛВС? #7
Я планирую систему состоящую из множества компонентов, и эту систему нужно внедрять постепенно, поэтому возникает проблема постоянного обновления.
Пока у меня такая мысль: сделать сервер обновлений, фактически - просто файл-сервер, на котором лежат DLL-ки. клиент на старте смотрит и сравнивает даты изменения своих DLL-ок и тех, что на серевере обновлений, и если нужно перезаписывает свои DLL-ки.
клиент - это минимальный СОМ-объект, который только проверяет обновления и стартует главный СОМ-объект, он не требует частого обновления.
И, конечно, интересно ваше мнение.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.05.2011, 21:52     возможно ли реализовать клиент и сервер на разных машинах в одной ЛВС?
Еще ссылки по теме:

C++ Клиент-сервер
C++ Обрабатывать данные о машинах, и выводить на экран информацию о машинах выбранной марки
C++ Клиент-сервер

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
boombastik
7 / 7 / 0
Регистрация: 13.02.2007
Сообщений: 1,255
10.05.2011, 21:52     возможно ли реализовать клиент и сервер на разных машинах в одной ЛВС? #8
Вполне жизнеспособная схема и я бы даже сказал классическая, правда не вижу в ней места для COM, ну то есть клиент, конечно, может использовать COM-объекты для реализации своих функций, но для реализации обновлений по описанной вами схеме его использование излишне.

Если обновления планируется совершать по внутренней локальной сети предприятия, то можно использовать любой из способов доступа/передачи данных с удаленного компьютера для получения новой версии, если же планируется выход на уровень глобальных сетей (Internet), то необходимо позаботится о соответствующей безопасности, как со стороны защиты кода, так и со стороны защиты клиента. В данном случае рекомедую почитать информацию о Microsoft концепции Smart Client для .NET Framework.

С уважением,
Владимир
Yandex
Объявления
10.05.2011, 21:52     возможно ли реализовать клиент и сервер на разных машинах в одной ЛВС?
Ответ Создать тему
Опции темы

Текущее время: 18:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru