Функция RxLogEventDirect (rxprocs.h)
RxLogEventDirect вызывается для записи ошибки в журнал ошибок ввода-вывода.
Вместо непосредственного вызова этой подпрограммы рекомендуется использовать макрос RXLogEvent или RxLogFailure.
Синтаксис
void RxLogEventDirect(
[in] IN PRDBSS_DEVICE_OBJECT DeviceObject,
[in] IN PUNICODE_STRING OriginatorId,
[in] IN ULONG EventId,
[in] IN NTSTATUS Status,
[in] IN ULONG Line
);
Параметры
[in] DeviceObject
Указатель на объект устройства RDBSS.
[in] OriginatorId
Строка, указывающая вызывающий объект, создающий ошибку.
[in] EventId
Значение, указывающее значение кода журнала ошибок ввода-вывода, отличное от значения NTSTATUS, возвращаемого подпрограммой. Допустимые значения кода журнала ошибок ввода-вывода определяются в файле заголовка ntiolog.h, который входит в состав Microsoft Windows SDK и Visual Studio.
[in] Status
Значение, указывающее код состояния подпрограммы, указывающий на сбой.
[in] Line
Номер строки в файле исходного кода, в которой произошел сбой.
Возвращаемое значение
None
Remarks
RxLogEventDirect внутренне вызывает подпрограмму RxLogEventWithAnnotation для создания и записи записи журнала.
Размер записи журнала ошибок ввода-вывода ограничен длиной 255 символов. Таким образом, если общая длина OriginatorId плюс размер фиксированной части журнала ошибок ввода-вывода превышает 255, запись журнала ошибок ввода-вывода не будет создана.
Подпрограмме RxLogEventWithAnnotation необходимо выделить память, чтобы создать запись журнала ошибок ввода-вывода . Следовательно, RxLogEventDirect может автоматически завершиться сбоем при сбое выделения памяти.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | rxprocs.h (включая Rxprocs.h, Rxstruc.h) |
IRQL | <= APC_LEVEL |