| поймать событие в диалоге | |
| От: | Аноним 938 | ||
| Дата: | 25.04.03 13:04 |
| Ситуация такая — есть СОМ объект, он генерирует событие Х мне в диалоге надо поймать это событие я так понимаю что для этого надо чтобы класс, производный от ЦДиалога был унаследован от _IMy — outgoing-интерфейс и вызвать AtlAdvise для Моего Цдиалога + реализовать в нем функцию X чтобы унаследовать от _IMy и не реализовывать руками QueryInterface и т.д. надо унаследовать от какогото АТЛ-шаблона типа CTemplate<_IMy> вопрос в следующем — что это за шаблон???? или как еще это можно сделать с наименьшими трудозатратами |
| Re: поймать событие в диалоге | |
| От: | culver | ||
| Дата: | 25.04.03 13:08 |
| Здравствуйте, Аноним, Вы писали: Можно класс диалога унаследовать от IDispEventImpl, в котором прописывается откуда вызывается событие. Тогда еще надо добавить BEGIN_SINK_MAP(...) SINK_ENTRY_EX(...) END_SINK_MAP() |
| Re: поймать событие в диалоге | |
| От: | Vi2 rsdn | ||
| Дата: | 25.04.03 13:26 |
Здравствуйте, Аноним, Вы писали:Статья на сайте Как подключиться к событиям СOM-объекта на С++ Vita Выше головы не прыгнешь, ниже земли не упадешь, дальше границы не убежишь! © КВН НГУ |
| Re[2]: поймать событие в диалоге | |
| От: | Аноним 938 | ||
| Дата: | 25.04.03 13:37 |
| Здравствуйте, culver, Вы писали: C>Здравствуйте, Аноним, Вы писали: C>Можно класс диалога унаследовать от IDispEventImpl, в котором прописывается откуда вызывается событие. C>Тогда еще надо добавить C> BEGIN_SINK_MAP(...) C> SINK_ENTRY_EX(...) C> END_SINK_MAP() что-то я не понял синтаксиса SINK_ENTRY_EX — при чем тут идентификатор контрола??? у меня событие генерирует сам объект |
| Re[3]: поймать событие в диалоге | |
| От: | culver | ||
| Дата: | 25.04.03 13:45 |
| Здравствуйте, Аноним, Вы писали: А>у меня событие генерирует сам объект Приблизительно так SINK_ENTRY_EX(1, DIID__IMyEvents, 1, Method) Method--обработчик события, которое гинерирует объект |
| Re: поймать событие в диалоге | |
| От: | KGP | ||
| Дата: | 29.04.03 05:12 |
| Здравствуйте, Аноним, Вы писали: А>Ситуация такая — есть СОМ объект, он генерирует событие Х А>мне в диалоге надо поймать это событие А>я так понимаю что для этого надо чтобы класс, производный от ЦДиалога был унаследован от _IMy — outgoing-интерфейс А>и вызвать AtlAdvise для Моего Цдиалога + реализовать в нем функцию X А>чтобы унаследовать от _IMy и не реализовывать руками QueryInterface и т.д. надо унаследовать от какогото АТЛ-шаблона типа CTemplate<_IMy> А>вопрос в следующем — что это за шаблон???? А>или как еще это можно сделать с наименьшими трудозатратами Есть такой парень ... "Vjacheslav Min" <vvmin@hotmail.com> он по моей просьбе выслал Wisard, который генерит h&cpp файлы для работы с событиями — пошли ему письмо и попроси, может вышлет ... Удобная штука ... ATL и MFC варианты |