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


Метод 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

См. также раздел

IEventControl