Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.12.07;
Скачать: CL | DM;

Вниз

Передача данных между COM-сервером и COM-клиентом   Найти похожие ветки 

 
nickmas   (2006-06-19 10:53) [0]

Уважаемые мастера! Подскажите, как организовать двунаправленный обмен данными между COM-сервером и COM-клиентом (клиент обращается к серверу и наоборот, сервер обращается к клиенту).

К примеру, передать параметр серверу, и сервер возвращает результат клиенту.

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


 
wal ©   (2006-06-19 12:34) [1]


> К примеру, передать параметр серверу, и сервер возвращает
> результат клиенту.
Через события, наверное, проще всего, хотя почему бы клиенту просто не подождать.

С уважением.


 
nickmas   (2006-06-19 12:50) [2]

Дело в том, что сервер возвращает не один результат, а несколько и с оределенным периодом времени.

Пусть, скажем, клиент запускает на сервере таймер, и сервер регулярно передает параметр клиенту. Как видно, результат вызываемой функции на сервере не подходит.


 
wal ©   (2006-06-19 13:48) [3]

Тогда однозначно события.


 
nickmas   (2006-06-19 14:18) [4]

Я не совсем понял про события, можешь чуть подробнее?


 
wal ©   (2006-06-19 14:44) [5]

Поподробнее в справке, Developing COM-based Applications -> Creating simple COM servers -> Managing Events in your Automation object


 
tesseract ©   (2006-06-20 11:04) [6]


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

клиент может при обращении к серверу, передать указатель на свой интерфейс IUnknown.
Так например работает станицы свойств.



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

Текущий архив: 2008.12.07;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.018 c
2-1224875284
CodeMaster
2008-10-24 23:08
2008.12.07
Поддержка скриптов


2-1225273309
Iriss
2008-10-29 12:41
2008.12.07
Процедура внутри процедуры


6-1196064124
botaniQ
2007-11-26 11:02
2008.12.07
Select в WebBrowser


2-1225359412
Thor234
2008-10-30 12:36
2008.12.07
Массив


2-1225112211
X-Type
2008-10-27 15:56
2008.12.07
COM (Initialize)