Connection Point
От: Cory Россия  
Дата: 13.11.01 12:54
Оценка:
Здравствуйте

Не подскажет ли кто, REFIID какого интерфейса передается в методе FindConnectionPoint интерфейса IConnectionPointContainer. То есть если у меня есть объект Source с n интерфейсами и объект Sink, реализующий интерфейс с callback методами для событий, которые генерятся методами i-го интерфейса Source, то в качестве riid должен передаваться REFIID этого самого i-го интерфейса?

Заранее благодарен
Чернов Евгений
Re: Connection Point
От: Аноним  
Дата: 13.11.01 13:18
Оценка:
Здравствуйте Cory, Вы писали:

C>Здравствуйте


C>Не подскажет ли кто, REFIID какого интерфейса передается в методе FindConnectionPoint интерфейса IConnectionPointContainer. То есть если у меня есть объект Source с n интерфейсами и объект Sink, реализующий интерфейс с callback методами для событий, которые генерятся методами i-го интерфейса Source, то в качестве riid должен передаваться REFIID этого самого i-го интерфейса?


В качестве REFIID передается IID callback-интерфейса.

C>Заранее благодарен

C>Чернов Евгений
Re: Connection Point
От: Аноним  
Дата: 13.11.01 13:18
Оценка:
Здравствуйте Cory, Вы писали:

C>Здравствуйте


C>Не подскажет ли кто, REFIID какого интерфейса передается в методе FindConnectionPoint интерфейса IConnectionPointContainer. То есть если у меня есть объект Source с n интерфейсами и объект Sink, реализующий интерфейс с callback методами для событий, которые генерятся методами i-го интерфейса Source, то в качестве riid должен передаваться REFIID этого самого i-го интерфейса?


C>Заранее благодарен

C>Чернов Евгений
Читай статью про Connection Points.
Re[2]: Connection Point
От: Cory Россия  
Дата: 13.11.01 13:44
Оценка:
Здравствуйте Аноним

Спасибо за помощь, хотя я уже разобрался.
Re: Connection Point
От: VladD2 Российская Империя www.nemerle.org
Дата: 13.11.01 16:07
Оценка:
Здравствуйте Cory, Вы писали:

C>Здравствуйте


C>Не подскажет ли кто, REFIID какого интерфейса передается в методе FindConnectionPoint интерфейса IConnectionPointContainer.


Так того который необходимо подключить для обработки событий. Только не REFIID, а IID. REF — просто указывает, что параметр передается по ссылке.

C>То есть если у меня есть объект Source с n интерфейсами и объект Sink, реализующий интерфейс с callback методами для событий, которые генерятся методами i-го интерфейса Source, то в качестве riid должен передаваться REFIID этого самого i-го интерфейса?


В общем да. Только Source оутгоинг-интерфесы не реализует, а аписывает в своей tlb.
Твой же обект должен реализовать оутгоинг-интерфейс и обеспечить его получение через QI, так как ConnectionPoint, при адвайзе, будет запрашивать указатель именно через QI.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.