共用方式為


NdisCoCreateVc 函式 (ndis.h)

NdisCoCreateVc 設定連線端點,用戶端可以從該端點進行傳出呼叫,或獨立呼叫管理員可以分派來電。

語法

NDIS_STATUS NdisCoCreateVc(
  [in]           NDIS_HANDLE  NdisBindingHandle,
  [in, optional] NDIS_HANDLE  NdisAfHandle,
  [in]           NDIS_HANDLE  ProtocolVcContext,
  [in, out]      PNDIS_HANDLE NdisVcHandle
);

參數

[in] NdisBindingHandle

指定由 NdisOpenAdapterEx 所傳回的句柄,識別呼叫者所繫結之下一個較低驅動程式的目標 NIC 或虛擬適配卡。

[in, optional] NdisAfHandle

指定呼叫者為用戶端時,NdisClOpenAddressFamilyEx 所傳回的句柄。 呼叫管理員會將此參數設定為 NULL,如果它正在為自己建立 VC,例如 VC 到網路交換器。 當它為來電通知建立 VC 時,呼叫管理員會傳遞它儲存在其每個 AF 狀態的 AF 句柄,而該句柄是由 CallMgrAfContext 所指定的,該句柄會當做輸入參數傳遞給它的 ProtocolCmRegisterSap 函式。

[in] ProtocolVcContext

指定呼叫端提供的常駐內容區域的句柄,呼叫端會維護此 VC 的狀態。 如果呼叫 NdisCoCreateVc 成功,則 NDIS 會將此句柄傳回 VC 建立者,並在所有後續關於此端點的呼叫中傳遞回 VC 建立者。

[in, out] NdisVcHandle

呼叫 NdisCoCreateVc 時,呼叫端提供的變數指標必須初始化為 NULL。 從成功呼叫傳回時,這會指向 NDIS 已針對新建立的 VC 設定為其句柄的變數。 呼叫端必須儲存此句柄,以便後續呼叫連線導向的 Ndis Xxx 函式。

傳回值

NdisCoCreateVc 可以傳回下列其中一項:

傳回碼 描述
NDIS_STATUS_SUCCESS
NDIS 已成功建立 VC。
NDIS_STATUS_RESOURCES
NDIS 無法配置足夠的記憶體來設定 VC。
NDIS_STATUS_FAILURE
指定的 NdisAfHandle 無效。
NDIS_STATUS_ XXX
基礎迷你埠驅動程式無法建立 VC,因為迷你埠驅動程序決定的原因,NDIS 已傳播至呼叫端。

言論

用戶端或獨立呼叫管理員會建立具有 NdisCoCreateVc的 VC,視 VC 是否分別代表傳出或傳入呼叫而定。

在建立 VC 的過程中,NDIS 會將 NdisVcHandle 提供給用戶端、呼叫管理員,以及兩個通訊協定驅動程式系結至的迷你埠驅動程式。 此句柄會識別用戶端、呼叫管理員和迷你埠驅動程式的虛擬線路,並指示後續有關指定 VC 的要求。 每個驅動程式都必須將此 VC 句柄視為不透明變數,並在後續對特定連線導向 NDIS 連結庫函式的呼叫中傳遞它未修改且未解譯。

通常,NdisCoCreateVc 的呼叫者 將傳回的 NdisVcHandle 儲存在呼叫端配置的狀態區域中,ProtocolVcContext 。 NDIS 會將此句柄當做輸入參數傳遞至 ProtocolCoCreateVcMiniportCoCreateVc 每個建立 VC 時涉及的其他兩個驅動程式函式。

若要進行傳出呼叫,客戶端必須先呼叫 NdisCoCreateVc。 作為同步作業,NDIS 會呼叫基礎迷你埠驅動程式的 MiniportCoCreateVc 函式,以及呼叫管理員的 ProtocolCoCreateVc 函式,再 NdisCoCreateVc 傳回控制權。 如果用戶端呼叫 NdisCoCreateVc 成功,用戶端就可以繼續進行傳出呼叫,將傳回的 NdisVcHandle 傳遞至 NdisClMakeCall

當它的時機 ProtocolCoReceiveNetBufferLists 函式會處理導向至其中一個已註冊 SAP 的來電供應專案,呼叫管理員必須先呼叫 NdisCoCreateVc。 作為同步作業,NDIS 會在 NdisCoCreateVc 傳回控制權之前,呼叫基礎迷你埠驅動程式的 MiniportCoCreateVc 函式和用戶端的 ProtocolCoCreateVc 函式。 如果呼叫 NdisCoCreateVc 成功,則呼叫管理員可以繼續通知適當的用戶端,將傳回的值傳遞至 NdisVcHandle NdisCmDispatchIncomingCall

以 NDIS 註冊為通訊協定驅動程式的獨立呼叫管理員,可以呼叫 NdisCoCreateVc。 提供整合式通話管理支援呼叫的連線導向迷你埠驅動程式,NdisMCmCreateVc, 改為 。

要求

要求 價值
最低支援的用戶端 支援 Windows Vista 中的 NDIS 6.0 和 NDIS 5.1 驅動程式(請參閱 NdisCoCreateVc (NDIS 5.1)。 支援 Windows XP 中的 NDIS 5.1 驅動程式(請參閱 NdisCoCreateVc (NDIS 5.1)。
目標平臺 桌面
標頭 ndis.h (包括 Ndis.h)
連結庫 Ndis.lib
IRQL <= DISPATCH_LEVEL
DDI 合規性規則 Irql_Connection_Function(ndis)

另請參閱

MiniportCoCreateVc

NdisAllocateFromNPagedLookasideList

NdisClMakeCall

NdisCmDispatchIncomingCall

NdisCoDeleteVc

NdisMCmCreateVc

ProtocolCmRegisterSap

ProtocolCoCreateVc

ProtocolCoReceiveNetBufferLists