NdisWriteEventLogEntry 函式 (ndis.h)
NdisWriteEventLogEntry 會將事件記錄到 Win32 事件記錄檔。
語法
NDIS_STATUS NdisWriteEventLogEntry(
[in] PVOID LogHandle,
[in] NDIS_STATUS EventCode,
[in] ULONG UniqueEventValue,
[in] USHORT NumStrings,
[in, optional] PVOID StringsList,
[in] ULONG DataSize,
[in, optional] PVOID Data
);
參數
[in] LogHandle
記錄此事件的通訊協定驅動程式物件的指標。
[in] EventCode
指定描述事件的NDIS_STATUS_XXX 程序代碼。
[in] UniqueEventValue
識別錯誤訊息的這個實例。
[in] NumStrings
指定選擇性 StringsList 中 Unicode 字串的指標數目。 如果 StringsList 為 NULL, 則 NumStrings 必須為零。
[in, optional] StringsList
NULL 或指向緩衝 Unicode 字串。 這些描述事件的字串會插入 Win32 事件記錄檔中,而且可以使用 Win32 事件查看器檢查。 每個字串都必須是 NUL 終止的 Unicode 字串。
[in] DataSize
在 Data 中指定二進位數據之緩衝區中的位元元組數目。 如果 Data 為 NULL,DataSize 必須為零。
[in, optional] Data
NULL 或指向緩衝二進位傾印數據,這對於瞭解事件很有用。 您可以使用 Win32 事件檢視器來檢查此資料。
傳回值
NdisWriteEventLogEntry 可以傳回下列其中一個值:
傳回碼 | Description |
---|---|
|
已成功記錄事件。 |
|
選擇性提供的 Unicode 字串和二進位傾印資料超過允許的大小上限 (MAX_EVENT_LOG_DATA_SIZE) 。 |
|
NDIS 無法為 I/O 錯誤記錄檔記錄設定記憶體。 |
備註
NdisWriteEventLogEntry 會配置 I/O 錯誤記錄檔記錄、在記錄中填入事件的相關信息,然後將記錄寫入 I/O 錯誤記錄檔。 使用者可以檢視記錄的事件,包括事件和/或選擇性二進位傾印數據的選擇性描述,以及 Win32 事件查看器。
NT 錯誤記錄線程會使用選擇性 StringsList 中提供的任何字元串來填入寫入 Win32 事件記錄檔中的訊息。 每個字串都必須是 NUL 終止的 Unicode 字串。 I/O 管理員假設初始字串是回報錯誤的驅動程式名稱,或是造成錯誤之裝置的名稱。
呼叫端所提供的 Unicode 字串應該從登錄讀取,或應該是與語言無關的 (也就是說,字串在任何語言中都應該相同,例如,字串可能是檔名) 。
呼叫端提供的傾印數據可以是任何二進位數據 (,例如緩存器值) ,有助於瞭解事件。 呼叫端不需要填補二進位數據。 如有必要, NdisWriteEventLogEntry 會填補二進位傾印數據,讓最終數據大小是 (ULONG ) 的多個 整數。
系統會限制提供給 NdisWriteEventLogEntry 的選擇性數據大小總計。 字串清單和 (可能填補) 二進位傾印的合併大小必須小於或等於MAX_EVENT_LOG_DATA_SIZE。
NdisWriteEventLogEntry 只能由通訊協定驅動程式呼叫。 迷你埠驅動程序應該呼叫 NdisWriteErrorLogEntry 來記錄事件和錯誤。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | (支援 NDIS 6.0 和 NDIS 5.1 驅動程式,請參閱 Windows Vista 中的 NdisWriteEventLogEntry (NDIS 5.1) ) 。 (支援 NDIS 5.1 驅動程式,請參閱 Windows XP 中的 NdisWriteEventLogEntry (NDIS 5.1) ) 。 |
目標平台 | Universal |
標頭 | ndis.h (包含 Ndis.h) |
程式庫 | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI 合規性規則 | Irql_Miscellaneous_Function (ndis) |