NdisIfRegisterProvider 函式 (ndis.h)
NdisIfRegisterProvider 函式會註冊 NDIS 網路介面提供者。
語法
NDIS_STATUS NdisIfRegisterProvider(
[in] PNDIS_IF_PROVIDER_CHARACTERISTICS ProviderCharacteristics,
[in] NDIS_HANDLE IfProviderContext,
PNDIS_HANDLE pNdisIfProviderHandle
);
參數
[in] ProviderCharacteristics
所提供呼叫端的指標 NDIS_IF_PROVIDER_CHARACTERISTICS 結構。 此結構會定義提供者的特性,包括其提供者回呼函式的進入點。
[in] IfProviderContext
這個網路介面提供者之呼叫端提供之內容區域的句柄。 如果沒有內容區域,請將此參數設定為 NULL 。
pNdisIfProviderHandle
呼叫端提供的句柄變數指標。 如果註冊作業成功,NDIS 會將句柄寫入識別網路介面提供者的這個變數。 介面提供者應該保留此句柄,以供後續需要介面提供者句柄的呼叫使用。
傳回值
NdisIfRegisterProvider 會傳回下列其中一個狀態值:
傳回碼 | Description |
---|---|
|
作業已成功完成。 |
|
作業失敗,因為資源不足。 |
|
NdisIfRegisterProvider 無法註冊提供者,因為 NDIS_IF_PROVIDER_CHARACTERISTICSProviderCharacteristics 參數的結構包含無效的成員數據。 |
|
NdisIfRegisterProvider 無法註冊提供者,因為 NDIS_IF_PROVIDER_CHARACTERISTICS 中的 Header 成員指定不支持的結構版本。 |
備註
NDIS 驅動程式會在初始化期間呼叫 NdisIfRegisterProvider 函 式一次,以註冊為 NDIS 介面提供者。 例如,驅動程式可以從其 DriverEntry 例程呼叫 NdisIfRegisterProvider。 介面提供者是一種軟體元件,可管理網路介面以支援MIB ( RFC 2863) 。
為了處理介面提供者 OID 要求,介面提供者會在 中提供回呼函式的進入點 NDIS_IF_PROVIDER_CHARACTERISTICSNdisIfRegisterProvider的 ProviderCharacteristics 參數結構。
NDIS 介面提供者會呼叫 NdisIfRegisterInterface 函式來註冊網路介面。 提供者可以註冊多個介面。
如果 NdisIfRegisterProvider 成功,它會在 pNdisProviderHandle 參數指向的位置傳回句柄。 介面提供者應該保留此句柄,以供後續需要介面提供者句柄的呼叫使用。 例如,驅動程式必須在驅動程式卸除之前呼叫 NdisIfDeregisterProvider 。
不再是介面提供者的元件可以隨時呼叫 NdisIfDeregisterProvider 函 式,以釋放驅動程式呼叫 NdisIfRegisterProvider 時所配置的介面提供者資源。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | NDIS 6.0 和更新版本支援。 |
目標平台 | 桌面 |
標頭 | ndis.h (包含 Ndis.h) |
程式庫 | Ndis.lib |
IRQL | PASSIVE_LEVEL |
DDI 合規性規則 | Irql_Interfaces_Function (ndis) |
另請參閱
NDIS_IF_PROVIDER_CHARACTERISTICS意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應