Функция TraceLoggingRegisterEx (traceloggingprovider.h)

Регистрирует поставщик TraceLogging, чтобы его можно было использовать для регистрации событий, указывая обратный вызов включения трассировки событий Windows. Регистрация действительна до тех пор, пока не будет отменена регистрация поставщика или пока процесс не завершится.

Синтаксис

TLG_STATUS TraceLoggingRegisterEx(
  [in, out]      TraceLoggingHProvider hProvider,
  [in, optional] TLG_PENABLECALLBACK   pEnableCallback,
  [in, optional] PVOID                 pCallbackContext
);

Параметры

[in, out] hProvider

Дескриптор регистрируемого поставщика TraceLogging. Дескриптор еще не должен быть зарегистрирован.

[in, optional] pEnableCallback

EtW Включите обратный вызов , который будет вызываться, когда сеанс трассировки включает или отключает поставщика.

[in, optional] pCallbackContext

Необязательный указатель контекста, определяемый поставщиком, для передачи обратному вызову.

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

При вызове этой функции из кода пользовательского режима функция возвращает .HRESULT Используйте макрос SUCCEEDED() , чтобы определить, успешно ли выполняется функция.

При вызове этой функции из кода в режиме ядра функция возвращает .NTSTATUS Используйте макрос NT_SUCCESS() , чтобы определить, успешно ли выполняется функция.

Примечание

Код ошибки, возвращаемый TraceLoggingRegisterEx, в основном предназначен для использования в сценариях отладки и диагностики. Большая часть рабочего кода должна продолжать выполняться, даже если поставщик трассировки событий Windows не удалось зарегистрировать, поэтому сборки выпуска обычно должны игнорировать код ошибки, возвращенный TraceLoggingRegisterEx.

Комментарии

Дополнительные сведения о регистрации поставщиков см. в разделе TraceLoggingRegister . Дополнительные сведения о поведении обратного вызова см. в разделе EtW Enable Callback .

TraceLoggingRegisterEx выполняет следующие действия:

  • Вызывает EventRegister , чтобы открыть подключение к трассировки событий Windows.
  • Если EventRegister выполняется успешно, вызывает TraceLoggingSetInformation с InformationClassEventProviderSetTraits , чтобы настроить поставщик для поддержки TraceLogging.

Вызов TraceLoggingRegister совпадает с вызовом TraceLoggingRegisterEx со значением NULL для параметров обратного вызова и контекста . Используйте TraceLoggingRegisterEx, если вам нужно получить обратный вызов etw Enable, когда сеансы включают или отключают поставщика.

Требования

   
Минимальная версия клиента Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header traceloggingprovider.h
Библиотека Advapi32.lib
DLL Н/Д

См. также

Включение обратного вызова трассировки событий Windows

EventRegister

TraceLoggingRegister

TraceLoggingUnregister

TraceLoggingWrite

TRACELOGGING_DEFINE_PROVIDER