共用方式為


NdisMCmRegisterAddressFamilyEx 函式 (ndis.h)

NdisMCmRegisterAddressFamilyEx 函式會註冊位址系列 (AF) ,以在迷你埠通話管理員 (MCM) 和 CoNDIS 用戶端之間進行通訊。

語法

NDIS_STATUS NdisMCmRegisterAddressFamilyEx(
  [in] NDIS_HANDLE        MiniportAdapterHandle,
  [in] PCO_ADDRESS_FAMILY AddressFamily
);

參數

[in] MiniportAdapterHandle

NDIS 提供的句柄,可識別迷你埠配接器。 此句柄是 MCM 的輸入參數 MiniportInitializeEx 函 式。

[in] AddressFamily

識別 MCM 驅動程式所支援 AF 之CO_ADDRESS_FAMILY 結構的指標。

指標會變成 的輸入參數系結至此 MCM 驅動程式之所有 CoNDIS 用戶端的 ProtocolCoAfRegisterNotify 函式

傳回值

NdisMCmRegisterAddressFamilyEx 可以傳回下列任一項:

傳回碼 Description
NDIS_STATUS_SUCCESS
以 NDIS 註冊為 ADDRESSFamily 參數所指定 AF 呼叫管理員的迷你埠驅動程式,因此 NDIS 會呼叫系結至 MCM 驅動程式之所有用戶端的 ProtocolCoAfRegisterNotify 函式
NDIS_STATUS_RESOURCES
要求的作業失敗,因為 NDIS 無法配置足夠的記憶體,或初始化它用來追蹤 MCM 驅動程式做為指定 AF 呼叫管理員的狀態資訊。
NDIS_STATUS_FAILURE
NDIS 呼叫 NdisMCmRegisterAddressFamilyEx 失敗,可能是下列其中一個原因:
  • 呼叫端未註冊為連線導向的迷你埠驅動程式。
  • 呼叫端嘗試為指定的迷你埠配接器註冊重複的 AF。

備註

NDIS MCM,可藉由呼叫 註冊為 NDIS 迷你埠驅動程式 NdisMRegisterMiniportDriver 函 式應該呼叫 NdisMCmRegisterAddressFamilyEx 函 式來註冊 AF。 獨立呼叫管理員應該改為呼叫 NdisCmRegisterAddressFamilyEx 函 式。

若要註冊迷你埠配接器的 AF,MCM 應該從 MiniportInitializeEx 函式呼叫 NdisMCmRegisterAddressFamilyEx

任何網路介面卡的驅動程式 (NIC) 具有內建聯機導向訊號支援的驅動程式,都可以自行註冊為 MCM 驅動程式,以提升管理呼叫的效能。 如果驅動程式註冊為 MCM 驅動程式,任何具有 NIC 驅動程式本身呼叫管理支援的獨立呼叫管理員都已取消。

MCM 驅動程式會在判斷 NIC 完全運作且驅動程式可以完成網路 I/O 作業之後,呼叫 NdisMCmRegisterAddressFamilyEx 。 也就是說,這類 MCM 會自行註冊為呼叫管理員,並公告其 CoNDIS 用戶端的特定訊號服務。

在 MiniportInitializeEx 以成功註冊作為呼叫管理員傳回控制權之後,NDIS 會呼叫潛在用戶端的 ProtocolBindAdapterEx 函式,然後呼叫所有系結至相關聯 MCM 迷你埠適配卡之用戶端的 ProtocolCoAfRegisterNotify 函式。 然後,這些用戶端會導致 NDIS 呼叫 MCM 的 ProtocolCmOpenAf 函式。

MCM 可以為它所管理的單一 NIC 支援一個以上的 AF。 MCM 驅動程式必須針對註冊迷你埠適配卡的每個 AF 呼叫 NdisMCmRegisterAddressFamilyEx 一次。 只有一個 MCM 驅動程式可以針對系結至指定迷你埠適配卡的用戶端支援特定類型的 AF。

規格需求

需求
最低支援的用戶端 NDIS 6.0 和更新版本支援。
目標平台 桌面
標頭 ndis.h (包含 Ndis.h)
程式庫 Ndis.lib
IRQL PASSIVE_LEVEL
DDI 合規性規則 Irql_MCM_Function (ndis)

另請參閱

CO_ADDRESS_FAMILY

MiniportInitializeEx

NdisCmRegisterAddressFamilyEx

NdisMRegisterMiniportDriver

ProtocolBindAdapterEx

ProtocolCmOpenAf

ProtocolCoAfRegisterNotify

ProtocolCoCreateVc

ProtocolCoDeleteVc

ProtocolCoOidRequest

ProtocolCoOidRequestComplete