Функция RxLogEventWithBufferDirect (rxprocs.h)

RxLogEventWithBufferDirect выделяет структуру журнала ошибок ввода-вывода, заполняет ее информацией и записывает запись в журнал ошибок ввода-вывода.

Синтаксис

void RxLogEventWithBufferDirect(
       IN PVOID           DeviceOrDriverObject,
  [in] IN PUNICODE_STRING OriginatorId,
  [in] IN ULONG           EventId,
  [in] IN NTSTATUS        Status,
  [in] IN PVOID           DataBuffer,
  [in] IN USHORT          DataBufferLength,
  [in] IN ULONG           LineNumber
);

Параметры

DeviceOrDriverObject

Указатель на объект устройства RDBSS.

[in] OriginatorId

Строка, указывающая вызывающий объект, создающий ошибку.

[in] EventId

Значение, указывающее код журнала ошибок ввода-вывода, который отличается от значения NTSTATUS, возвращаемого подпрограммой. Допустимые значения кода журнала ошибок ввода-вывода определяются в файле заголовка ntiolog.h, который входит в состав Microsoft Windows SDK и Visual Studio.

[in] Status

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

[in] DataBuffer

Указатель на буфер данных, добавляемый в структуру журнала ошибок ввода-вывода.

[in] DataBufferLength

Длина буфера данных, добавляемого в структуру журнала ошибок ввода-вывода.

[in] LineNumber

Номер строки в файле исходного кода, в которой произошел сбой.

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

None

Remarks

RxLogEventDirect внутренне вызывает подпрограмму RxLogEventWithAnnotation для создания и записи записи журнала, передавая параметры Status и LineNumber в качестве параметра Annotations в RxLogEventWithAnnotation.

Размер записи журнала ошибок ввода-вывода ограничен длиной 255 символов. Таким образом, если общая длина параметров EventId, DataBuffer и Annotations плюс размер фиксированной части записи журнала ошибок ввода-вывода превышает 255, запись журнала ошибок ввода-вывода не будет создана.

Подпрограмме RxLogEventWithAnnotation необходимо выделить память, чтобы создать запись журнала ошибок ввода-вывода . Следовательно, RxLogEventWithBufferDirect может автоматически завершиться сбоем при сбое выделения памяти.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть rxprocs.h (включая Rxprocs.h, Rxstruc.h)
IRQL <= APC_LEVEL

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

RxLogEventDirect

RxLogEventWithAnnotation

_RxLog