Вниз
Скачать: CL | DM;

Вопрос по COM: как обратиться серверу к клиенту?   Найти похожие ветки 

 
nickmas   (2006-06-16 09:24) [0]

Подскажите, пожалуйста, в следующем:
  Есть COM-сервер, к нему через интерфейс подключается клиент и может выполнять какие-либо действия на этом сервере. Как сделать, чтобы и сервер мог выполнять действия в пространстве подключенного к нему клиента?

PS.  COM-сервер и COM-клиент работают в разных адресных пространствах.


 
tesseract ©   (2006-06-16 09:26) [1]


> Как сделать, чтобы и сервер мог выполнять действия в пространстве
> подключенного к нему клиента?


Передай указатель на idispatch клиента.
Если он конечно есть.


 
nickmas   (2006-06-16 12:56) [2]

Подскажи, как по idispatch обратиться серверу к клиенту?


 
nickmas   (2006-06-16 23:14) [3]

Этот способ не подходит, т.к. сервер и клиент работают в разных адресных пространствах.

Может есть еще у кого-нибудь идеи?


 
tesseract ©   (2006-06-17 00:09) [4]


> Этот способ не подходит, т.к. сервер и клиент работают в
> разных адресных пространствах.

Com плевать, в чьём адресном пространстве он работает, яркий пример применения - 1С.


 
DrPass ©   (2006-06-17 00:50) [5]


> сервер и клиент работают в разных адресных пространствах.

Смысл появления СОМ вообще-то как раз и состоял в том, чтобы организовать совместную работу разных процессов, в разных адресных пространствах


 
isasa ©   (2006-06-17 10:58) [6]

А чем COM+ events не подходят?


 
nickmas   (2006-06-19 01:59) [7]


> Смысл появления СОМ вообще-то как раз и состоял в том, чтобы
> организовать совместную работу разных процессов, в разных
> адресных пространствах


Да, это так, но оно работает, когда клиент(ы) обращаются к серверу. А когда пытаешься одновременно обратиться из сервера к клиенту, выскакивает ошибка RPCRT4.dll.

В принципе вопрос в этом изначально и стоял.


 
nickmas   (2006-06-19 02:06) [8]

Пробовал сделать клиента1 одновременно и сервером2, и сервер1 - одновременно клиентом2, чтобы клиент1 обращался к серверу1 по одному интерфейсу и клиент2(сервер1) обращался к серверу2(клиент1) по другому интерфейсу (думаю вы поняли что я хочу сказать).

Т.е. организовать взаимную связь - ошибка таже.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.024 c
2-1150790362
Новичек
2006-06-20 11:59
2006.07.09
Закрытие файла.


2-1151144237
Sanches
2006-06-24 14:17
2006.07.09
Запрос к таблице с отбором по дате......


3-1147316092
Express
2006-05-11 06:54
2006.07.09
Ошибка при открытие TDataSet


1-1148739351
T54
2006-05-27 18:15
2006.07.09
Работа руссифицированных программ у буржуев


2-1150706401
Уля
2006-06-19 12:40
2006.07.09
Работа с Excel




   Наверх