NdisWriteErrorLogEntry 函式 (ndis.h)

NdisWriteErrorLogEntry 會將專案寫入系統 I/O 錯誤記錄檔。

語法

void NdisWriteErrorLogEntry(
  [in] NDIS_HANDLE     NdisAdapterHandle,
  [in] NDIS_ERROR_CODE ErrorCode,
  [in] ULONG           NumberOfErrorValues,
       ...             
);

參數

[in] NdisAdapterHandle

指定表示 NIC 的句柄,這是記錄 I/O 錯誤的原因。 此句柄是 MiniportInitializeEx 的輸入參數。

[in] ErrorCode

指定最能將 I/O 錯誤描述為下列其中一個值的 NDIS_ERROR_CODE_XXX 程式代碼:

NDIS_ERROR_CODE_RESOURCE_CONFLICT

驅動程式無法存取必要的資源。

NDIS_ERROR_CODE_OUT_OF_RESOURCES

硬體或驅動程式用盡資源。

NDIS_ERROR_CODE_HARDWARE_FAILURE

驅動程式偵測到硬體錯誤。

NDIS_ERROR_CODE_ADAPTER_NOT_FOUND

找不到網路適配器。

NDIS_ERROR_CODE_INTERRUPT_CONNECT

中斷註冊失敗。

NDIS_ERROR_CODE_DRIVER_FAILURE

發生與任何其他錯誤狀況不符的驅動程序失敗。

NDIS_ERROR_CODE_BAD_VERSION

驅動程式偵測到版本不符。

NDIS_ERROR_CODE_TIMEOUT

逾時已過期。

NDIS_ERROR_CODE_NETWORK_ADDRESS

網路地址無效。

NDIS_ERROR_CODE_UNSUPPORTED_CONFIGURATION

不支援要求的驅動程式組態。

NDIS_ERROR_CODE_INVALID_VALUE_FROM_ADAPTER

網路適配器硬體提供無效的值。

NDIS_ERROR_CODE_MISSING_CONFIGURATION_PARAMETER

登錄中遺漏驅動程式組態參數。

NDIS_ERROR_CODE_BAD_IO_BASE_ADDRESS

網路適配器硬體的 I/O 基地址無效。

NDIS_ERROR_CODE_RECEIVE_SPACE_SMALL

可用的接收緩衝區內存數量太小,無法接收數據。

NDIS_ERROR_CODE_ADAPTER_DISABLED

網路適配器硬體已停用。

[in] NumberOfErrorValues

指定要遵循此參數的 ULONG 值數目。

...

指定要記錄之錯誤之 ULONG 的可變大小陣列。

傳回值

備註

NdisWriteErrorLogEntry 會配置 I/O 錯誤記錄,填入記錄中提供錯誤的相關信息,然後將記錄寫入 I/O 錯誤記錄檔。

系統會限制錯誤記錄檔記錄的潛在大小。 針對 Windows 2000 和更新版本,限制會定義為ERROR_LOG_MAXIMUM_SIZE。 傳遞至 NdisWriteErrorLogEntryNumberOfErrorValues 因此具有系統強制執行的限制,這遠小於 ULONG 的最大可能值。

實際上,少數 NdisWriteErrorLogEntry 的呼叫端甚至接近 NumberOfErrorValues 的限制,因為提供許多其他NDIS_STATUS_XXX 值,對稍後使用 Win32 事件查看器讀取錯誤記錄檔的使用者或系統管理員並不特別有用。 每一個可能的機會記錄 I/O 錯誤都對使用者並不特別有説明,因此迷你埠驅動程式應該只記錄重要的 I/O 錯誤,以協助使用者或系統管理員偵錯 NIC 在特定機器上負責的網路失敗,或驅動程式初始化期間探索到的設定資源衝突。

一般而言,如果 Miniport 驅動程式無法初始化其 MiniportInitializeEx 函式,或無法配置 NIC 在 NIC 上執行 I/O 作業時,迷你埠驅動程式會在初始化 NdisWriteErrorLogEntry 時呼叫 NdisWriteErrorLogEntry。 迷你埠驅動程式也可以在裝置重設作業失敗時呼叫 NdisWriteErrorLogEntry ,因為無法復原的硬體錯誤 (s) 。 記錄這類 I/O 錯誤可協助使用者或系統管理員識別設定錯誤的 NIC 或具有失敗硬體元件的 NIC。

規格需求

需求
最低支援的用戶端 支援 NDIS 6.0 和 NDIS 5.1 驅動程式 (請參閱 Windows Vista 中的 NdisWriteErrorLogEntry (NDIS 5.1) ) 。 支援 NDIS 5.1 驅動程式 (請參閱 Windows XP 中的 NdisWriteErrorLogEntry (NDIS 5.1) ) 。
目標平台 Universal
標頭 ndis.h (包括 Ndis.h)
程式庫 Ndis.lib
IRQL <= DISPATCH_LEVEL
DDI 合規性規則 Irql_Miscellaneous_Function (ndis)

另請參閱

MiniportInitializeEx

MiniportResetEx

NdisMSetMiniportAttributes