共用方式為


RxLogEventDirect 函式 (rxprocs.h)

系統會呼叫 RxLogEventDirect ,將錯誤記錄到 I/O 錯誤記錄檔。

建議使用 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

值,指出 I/O 錯誤記錄檔碼值,與例程所傳回的 NTSTATUS 值不同。 法律 I/O 錯誤記錄檔值定義於隨附於 Microsoft Windows SDK 和 Visual Studio 的 ntiolog.h 頭檔中。

[in] Status

值,表示例程的狀態代碼,表示失敗。

[in] Line

原始碼檔案中發生此失敗的行號。

傳回值

備註

RxLogEventDirect 會在內部呼叫 RxLogEventWithAnnotation 例程來建立和寫入記錄專案。

I/O 錯誤記錄檔專案大小限制為 255 個字元的長度。 因此,如果 OriginatorId 的合併長度加上 I/O 錯誤記錄檔固定部分的大小超過 255,則不會建立任何 I/O 錯誤記錄專案。

RxLogEventWithAnnotation 例程必須配置記憶體,才能建立 I/O 錯誤記錄專案 。 因此,如果記憶體配置失敗, RxLogEventDirect 可能會以無訊息方式失敗。

規格需求

需求
目標平台 桌面
標頭 rxprocs.h (包含 Rxprocs.h、Rxstruc.h)
IRQL <= APC_LEVEL

另請參閱

RxLogEventWithAnnotation

RxLogEventWithBufferDirect

_RxLog