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


Функция SetTraceCallback (evntrace.h)

Важно!

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

Функция SetTraceCallback указывает функцию EventCallback для обработки событий для указанного класса трассировки событий.

Синтаксис

ULONG WMIAPI SetTraceCallback(
  [in] LPCGUID         pGuid,
  [in] PEVENT_CALLBACK EventCallback
);

Параметры

[in] pGuid

Указатель на GUID класса трассировки событий, для которого требуется получать события. Список идентификаторов GUID класса поставщика ядра см. в разделе Константы средства ведения журнала ядра NT.

[in] EventCallback

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

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

Если функция выполнена успешно, возвращаемое значение будет ERROR_SUCCESS.

Если функция завершается сбоем, возвращаемое значение является одним из кодов системных ошибок. Ниже приведены некоторые распространенные ошибки и их причины.

  • ERROR_INVALID_PARAMETER

    Выполняется одно из следующих условий.

    • pGuid имеет значение NULL.
    • EventCallback имеет значение NULL.

Комментарии

Потребители вызывают эту функцию.

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

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

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

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header evntrace.h
Библиотека Sechost.lib в Windows 8.1 и Windows Server 2012 R2; Advapi32.lib в Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista и Windows XP
DLL Sechost.dll в Windows 8.1 и Windows Server 2012 R2; Advapi32.dll в Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista и Windows XP

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

EventCallback

ProcessTrace

RemoveTraceCallback