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


Макрос WppRecorderLogCreate (wpprecorder.h)

Метод WppRecorderLogCreate создает буфер для хранения журнала средства записи.

Синтаксис

__drv_maxIRQL(DISPATCH_LEVEL)
NTSTATUS WppRecorderLogCreate(
    [In]        PRECORDER_LOG_CREATE_PARAMS CreateParams,
    [Out]       RECORDER_LOG *              RecorderLog
    );

Параметры

[in] CreateParams

Указатель на структуру RECORDER_LOG_CREATE_PARAMS .

[out] RecorderLog

Дескриптор для журнала средства записи.

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

None

Remarks

Возвращает NTSTATUS, указывающее, может ли драйвер использовать дескриптор RecorderLog для ведения журнала.

Перед вызовом WppRecorderLogCreate выделите структуру RECORDER_LOG_CREATE_PARAMS и инициализируйте, вызвав RECORDER_LOG_CREATE_PARAMS_INIT.

Сначала необходимо вызвать WPP_INIT_TRACING перед вызовом WppRecorderLogCreate. Значения по умолчанию используются, если элементы CreateParams не изменяются перед вызовом WppRecorderLogCreate.

Если возвращается успешное значение NTSTATUS, драйвер может использовать дескриптор RecorderLog для ведения журнала.

Если не возвращается успешное значение NTSTATUS, драйвер должен использовать дескриптор RECORDER_LOG в журнале по умолчанию. Кроме того, драйвер не должен пытаться войти в систему или удалить дескриптор, на который указывает RecorderLog.

Примечание

Этот метод выделяет память для буфера журналов из нестраничного пула.

Пример

RECORDER_LOG_CREATE_PARAMS  recorderCreate; 
RECORDER_LOG                logHandle;
 
RECORDER_LOG_CREATE_PARAMS_INIT(&recorderCreate, "Log #1");
recorderCreate.TotalBufferSize = 1024 * 8;
// Optionally use the following line to get timestamps in WPP log entries
recorderCreate.UseTimeStamp    = WppRecorderTrue;
// Use this line if you would like more precise timestamps (ten millionths of a second). This is valid only if you have set UseTimeStamp = WppRecorderTrue.
// recorderCreate.PreciseTimeStamp = WppRecorderTrue
status = WppRecorderLogCreate(&recorderCreate, &logHandle);

Дополнительные сведения о метках времени в записях журнала WPP, включая пример выходных данных журнала, см. в разделе Inflight Trace Recorder (IFR) для ведения журнала трассировок.

Требования

Требование Значение
Целевая платформа Windows
Header wpprecorder.h

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

структура RECORDER_LOG_CREATE_PARAMS