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

Функция TraceSetInformation настраивает параметры сеанса трассировки событий.

Синтаксис

ULONG WMIAPI TraceSetInformation(
  [in] TRACEHANDLE      SessionHandle,
  [in] TRACE_INFO_CLASS InformationClass,
  [in] PVOID            TraceInformation,
  [in] ULONG            InformationLength
);

Параметры

[in] SessionHandle

Дескриптор настраиваемого сеанса трассировки событий. Функция StartTrace возвращает этот дескриптор при запуске новой трассировки. Чтобы получить дескриптор существующей трассировки, используйте ControlTrace для запроса свойств трассировки на основе имени трассировки, а затем получите дескриптор из поля Wnode.HistoricalContext возвращаемых EVENT_TRACE_PROPERTIES данных.

[in] InformationClass

Класс сведений для включения или отключения. Сведения, фиксируемые классом, включаются в раздел расширенных данных события. Список классов сведений, которые можно включить, см. в перечислении TRACE_QUERY_INFO_CLASS .

[in] TraceInformation

Указатель на данные, относящиеся к классу информации. Класс information определяет содержимое этого параметра.

[in] InformationLength

Размер данных в байтах в буфере TraceInformation .

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

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

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

  • ERROR_BAD_LENGTH

    Программа выдала команду, но длина команды неверна. Эта ошибка возвращается, если параметр InformationLength меньше минимального размера.

  • ERROR_INVALID_PARAMETER

    Неправильный параметр".

  • ERROR_NOT_SUPPORTED

    Запрос не поддерживается.

  • Другое

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

Комментарии

Вызовите эту функцию после вызова StartTrace.

Если параметр InformationClass имеет значение TraceStackTracingInfo, вызов этой функции включает трассировку стека указанных событий ядра. Последующие вызовы этой функции перезаписывают предыдущий список событий ядра, для которых включена трассировка стека. Чтобы отключить трассировку стека, вызовите эту функцию с параметром InformationClass со значением TraceStackTracingInfo , а для Параметра InformationLength — значение 0.

Раздел расширенных данных события будет включать стек вызовов. Класс MOF StackWalk_Event определяет макет расширенных данных.

Как правило, на 64-разрядных компьютерах невозможно записать стек ядра в определенных контекстах, если ошибки страниц не разрешены. Чтобы включить обход стека ядра в x64, задайте для реестра Управление памятью DisablePagingExecutive значение 1. Значение DisablePagingExecutive реестра находится в следующем разделе реестра: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management. Это следует делать только для временной диагностики, так как это увеличивает использование памяти системой.

Требования

   
Минимальная версия клиента Windows 7 [только классические приложения]
Минимальная версия сервера Windows Server 2008 R2 [только классические приложения]
Целевая платформа 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
DLL Sechost.dll в Windows 8.1 и Windows Server 2012 R2; Advapi32.dll в Windows 8, Windows Server 2012, Windows 7 и Windows Server 2008 R2

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

TRACE_QUERY_INFO_CLASS

TraceQueryInformation