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


Функция EvtQuery (winevt.h)

Выполняет запрос для получения событий из канала или файла журнала, соответствующих заданным критериям запроса.

Синтаксис

EVT_HANDLE EvtQuery(
  [in] EVT_HANDLE Session,
  [in] LPCWSTR    Path,
  [in] LPCWSTR    Query,
  [in] DWORD      Flags
);

Параметры

[in] Session

Удаленный дескриптор сеанса, который возвращает функция EvtOpenSession . Задайте значение NULL , чтобы запрашивать события на локальном компьютере.

[in] Path

Имя канала или полный путь к файлу журнала, который содержит события, к которым требуется выполнить запрос. Можно указать файл журнала EVT, EVTX или ETL. Путь является обязательным, если параметр Query содержит запрос XPath; Путь игнорируется, если параметр Query содержит структурированный XML-запрос, а в запросе указан путь.

[in] Query

Запрос, указывающий типы событий, которые требуется извлечь. Можно указать запрос XPath 1.0 или структурированный XML-запрос. Если XPath содержит более 20 выражений, используйте структурированный XML-запрос. Чтобы получить все события, задайте для этого параметра значение NULL или "*".

[in] Flags

Один или несколько флагов, указывающих порядок получения событий, а также указывает, выполняется ли запрос к каналу или файлу журнала. Возможные значения см. в перечислении EVT_QUERY_FLAGS .

Возвращаемое значение

Дескриптор результатов запроса в случае успешного выполнения; в противном случае — NULL. Если функция возвращает значение NULL, вызовите функцию GetLastError , чтобы получить код ошибки.

Комментарии

Чтобы получить события из результатов запроса, вызовите функцию EvtNext . Чтобы получить события, начинающиеся с определенного события в результатах, вызовите функцию EvtSeek .

По завершении необходимо вызвать функцию EvtClose с дескриптором результатов запроса.

Необходимо использовать только дескриптор запроса, возвращающийся этой функцией в том же потоке, который создал дескриптор.

Примеры

Пример использования этой функции см. в разделе Запросы событий.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header winevt.h
Библиотека Wevtapi.lib
DLL Wevtapi.dll

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

EvtNext

EvtSeek

EvtSubscribe