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。 傳遞至 NdisWriteErrorLogEntry 的 NumberOfErrorValues 因此具有系統強制執行的限制,這遠小於 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) |