Как получить интерфейсы всех запущенных экземпляров приложен
От: VolandBSB  
Дата: 22.10.07 12:18
Оценка:
Доброго времени суток. Подскажите пожалуйста где копать, в данной ситуации:
Есть приложение которое себя регистрирует как СОМ сервер.
и регистрируется как активное RegisterActiveObject.
Может быть запущенно несколько экземпляров этого приложения, но активным будет последний (как я понимаю).
Есть некое приложение которому необходимо оперировать интерфейсами всех запущенных экземпляров. Например перекачивая данные
из одного в другой. Вопрос: Каким образом можно получить интерфейсы всех запущенных экземпляров, а не только активного ? Есть ли для этого какое то стандартное решение, или придется придумывать извращения ?

Заранее премного благодарен.
Re: Как получить интерфейсы всех запущенных экземпляров?
От: Vi2 Удмуртия http://www.adem.ru
Дата: 23.10.07 04:46
Оценка:
Здравствуйте, VolandBSB, Вы писали:

VBS>Есть приложение которое себя регистрирует как СОМ сервер и регистрируется как активное RegisterActiveObject.

VBS>Может быть запущенно несколько экземпляров этого приложения, но активным будет последний (как я понимаю).
VBS>Есть некое приложение которому необходимо оперировать интерфейсами всех запущенных экземпляров. Например перекачивая данные из одного в другой.
VBS>Вопрос: Каким образом можно получить интерфейсы всех запущенных экземпляров, а не только активного ? Есть ли для этого какое-то стандартное решение, или придется придумывать извращения ?

В твоем случае механизм ActiveObject бесполезен, т.к. он не обеспечивает перечисление работающих приложений. Нужно регистрировать приложения через другой моникер (для справки: ActiveObject использует Item моникер "!{CLSID}", одинаковый для всех твоих приложений). Например, через имя открытого документа или через другую уникальную строчку для каждого приложения.

Посмотри здесь информацию по CreateItemMoniker.
Vita
Выше головы не прыгнешь, ниже земли не упадешь, дальше границы не убежишь! © КВН НГУ
Re[2]: Как получить интерфейсы всех запущенных экземпляров?
От: VolandBSB  
Дата: 23.10.07 05:28
Оценка:
Здравствуйте, Vi2, Вы писали:

Vi2>В твоем случае механизм ActiveObject бесполезен, т.к. он не обеспечивает перечисление работающих приложений. Нужно регистрировать приложения через другой моникер (для справки: ActiveObject использует Item моникер "!{CLSID}", одинаковый для всех твоих приложений). Например, через имя открытого документа или через другую уникальную строчку для каждого приложения.


Vi2>Посмотри здесь информацию по CreateItemMoniker.


Спасибо. Нашел эту ветку
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.