Метод IEventSystem::Query (eventsys.h)
Извлекает коллекцию объектов подписки или событий из хранилища данных событий.
Синтаксис
HRESULT Query(
[in] BSTR progID,
[in] BSTR queryCriteria,
[out] int *errorIndex,
[out, retval] IUnknown **ppInterface
);
Параметры
[in] progID
Идентификатор ProgID класса объекта, к который будет выполняться запрос. Это должен быть допустимый идентификатор класса объекта события. Этот параметр может иметь одно из следующих значений:
- PROGID_EventClass
- PROGID_EventClassCollection
- PROGID_EventSubscription
- PROGID_EventSubscriptionCollection
[in] queryCriteria
Условия запроса. Дополнительные сведения о формировании допустимого выражения для этого параметра см. в разделе Примечания ниже.
[out] errorIndex
Расположение ошибки в параметре queryCriteria , выраженное в виде смещения.
[out, retval] ppInterface
Адрес указателя на объект, полученный в результате запроса. Этот параметр не может иметь значение NULL. В зависимости от объекта, заданного параметром progID , это указатель на один из следующих интерфейсов:
Возвращаемое значение
Этот метод может возвращать стандартные возвращаемые значения E_INVALIDARG, E_POINTER, E_OUTOFMEMORY, E_UNEXPECTED и E_FAIL, а также следующие значения.
Код возврата | Описание |
---|---|
|
Метод завершился успешно. |
|
При попытке вычисления строки запроса произошла синтаксическая ошибка. |
|
В строке запроса использовалось недопустимое имя поля. |
Комментарии
Вызывающий объект отвечает за освобождение памяти, выделенной с помощью параметра ppInterface .
Критерии запроса, заданные параметром queryCriteria , могут быть "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 |