Метод IEventControl::GetSubscriptions (eventsys.h)
Извлекает коллекцию подписок, связанных с методом события.
Синтаксис
HRESULT GetSubscriptions(
[in] BSTR methodName,
[in] BSTR optionalCriteria,
[in] int *optionalErrorIndex,
[out, retval] IEventObjectCollection **ppCollection
);
Параметры
[in] methodName
Метод события, связанный с коллекцией подписки.
[in] optionalCriteria
Условия запроса. Если этот параметр имеет значение NULL, используется запрос по умолчанию, заданный методом SetDefaultQuery . Дополнительные сведения о формировании допустимого выражения для этого параметра см. в разделе Примечания ниже.
[in] optionalErrorIndex
Расположение ошибки в параметре OptionalCriteria , выраженное в виде смещения. Этот параметр не может иметь значение NULL.
[out, retval] ppCollection
Адрес указателя на интерфейс IEventObjectCollection в объекте коллекции, который перечисляет подписки, связанные с объектом события.
Возвращаемое значение
Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
Этот метод является более специализированной формой метода IEventSystem::Query . Помимо получения только объектов подписки, коллекция, полученная путем вызова GetSubscriptions , автоматически обновляется при каждом изменении коллекции подписок.
Критерии запроса, заданные параметром optionalCriteria , могут быть "ALL", чтобы указать запрос для всех объектов подписки, или логическое выражение, обозначающее одно или несколько условий, которым должен соответствовать объект подписки для включения в результат запроса. Допустимые выражения имеют следующую форму:
[НЕ] propertynamerelationalOperatorvalue. Допустимые реляционные операторы:
==, =, !=, <>, ~=. Допустимые значения: string,string, {GUID}, TRUE, FALSE, NULL.
Отдельные логические выражения можно объединить с помощью and или OR. Выражения могут быть вложены в круглые скобки, чтобы обеспечить определенный порядок вычисления.
Ниже приведены некоторые примеры допустимых критериев запроса.
"EventClassID == {F89859D1-6565-11D1-88C8-0080C7D771BF}"
"EventClassID == {F89859D1-6565-11D1-88C8-0080C7D771BF} AND MethodName = 'StockPriceChange'"
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | eventsys.h |