Поделиться через


Публикация и доставка событий в COM+

Чтобы опубликовать событие, просто создайте экземпляр объекта класса событий и вызовите нужный метод. Подробные инструкции по выполнению этого действия в коде см. в разделе "Публикация события".

Когда издатель запускает событие, служба событий COM+ выполняет поиск базы данных подписки, чтобы найти всех подписчиков, зарегистрированных подписок на созданный класс событий. Он подключается к этим подписчикам (путем прямого создания, моникеров или компонентов в очереди) и вызывает метод. Для поддержки нескольких уведомлений подписчика для события методы могут содержаться только в параметрах и должны возвращать только значения HRESULT или успешного выполнения.

Примечание.

Эта версия событий COM+ не поддерживает распределенное хранилище событий. Подписчик должен подписаться на событие на каждом компьютере, с которого он хочет получать уведомления. В качестве альтернативы можно зарегистрировать объект класса событий и подписки на центральном компьютере и создать экземпляр этого объекта класса событий с удаленных компьютеров, на которых публикуются события. Доставка событий предоставляется службой DCOM или службой компонентов COM+ в очереди. Дополнительные сведения об использовании службы компонентов COM+ в очереди см. в разделе "Использование событий COM+ с компонентами COM+ Очередей".

 

По умолчанию служба событий COM+ запускает события по одному разу без определенного или повторяемого порядка. Издатели, которым необходимо контролировать порядок, в котором подписчики получают событие, могут реализовать фильтр издателя. (Дополнительные сведения см. в разделе Фильтрация событий в COM+.)

Фильтрация событий в COM+

Подписки

Объект класса событий COM+

Использование событий COM+ с компонентами в очереди COM+