Передача серверу COM-интерфейса
От: HorusSolution  
Дата: 28.12.09 06:51
Оценка:
Имеется COM-сервер, который предоставляет интерфейс:

interface IRequestServer : IDispatch{
        [id(1)]    HRESULT Request( [in] IResponseClient** responseClient);
    };

interface IResponseClient: IDispatch{
        [id(1)]    HRESULT Response();
    };


Кокласс для IRequestServer реализован на сервере.
Про IResponseClient сервер знает лишь как об интерфейсе. Он должен быть реализован на клиенте, согласно данному описанию.

Сервер я организовал с помощью ATL. Соответственно все заглушки/прокси генерились автоматически.
Как клиенту воспользоваться сгенерированным tlb-файлом, учитывая, что клиент можеть быть не с\с++ ым. Т.е. нельзя подключать специфические для с\с++ файлы? Клиент должен описать все заглушки\прокси сам?
Re: Передача серверу COM-интерфейса
От: Vi2 Удмуртия http://www.adem.ru
Дата: 28.12.09 09:38
Оценка:
Здравствуйте, HorusSolution, Вы писали:

HS>Сервер я организовал с помощью ATL. Соответственно все заглушки/прокси генерились автоматически.

HS>Как клиенту воспользоваться сгенерированным tlb-файлом, учитывая, что клиент может быть не с\с++ ым. Т.е. нельзя подключать специфические для с\с++ файлы? Клиент должен описать все заглушки\прокси сам?

В этом нет необходимости, т.к. сервер, объявляя интерфейс IResponseClient, должен обеспечить его маршаллинг, т.е. вот эти вот "заглушки\прокси".

А с tlb-файлами почти все среды разработки умеют работать.
Vita
Выше головы не прыгнешь, ниже земли не упадешь, дальше границы не убежишь! © КВН НГУ
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.