共用方式為


PROTOCOL_CO_DELETE_VC回呼函式 (ndis.h)

需要 ProtocolCoDeleteVc 函式。 此函式會終止用戶端或呼叫管理員的狀態,讓該 VC 的原始建立者關閉的已建立虛擬連線。

注意 您必須使用 PROTOCOL_CO_DELETE_VC 類型來宣告函式。 如需詳細資訊,請參閱下列範例一節。
 

語法

PROTOCOL_CO_DELETE_VC ProtocolCoDeleteVc;

NDIS_STATUS ProtocolCoDeleteVc(
  [in] NDIS_HANDLE ProtocolVcContext
)
{...}

參數

[in] ProtocolVcContext

指定客戶端或呼叫管理員的個別 VC 內容區域的句柄。 通訊協定最初從其 ProtocolCoCreateVc 函式提供此句柄。

傳回值

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

傳回碼 Description
NDIS_STATUS_SUCCESS
通訊協定已釋出或備妥以供重複使用原本配置給 VC 的所有資源。
NDIS_STATUS_NOT_ACCEPTED
VC 仍在作用中,且通訊協定在 VC 上擱置未完成的作業,因此無法終結。
NDIS_STATUS_XXX
通訊協議因為驅動程式決定的原因而無法刪除 VC。

備註

ProtocolCoDeleteVc 是驅動程式的 ProtocolCoCreateVc 函式的相互函式。 一般而言,它會釋放呼叫管理員或用戶端先前配置以在作用中 VC 上執行作業的任何動態資源和結構。

ProtocolCoDeleteVc 傳回具有 NDIS_STATUS_SUCCESS 的控件時, NdisVcHandleProtocolCoCreateVc 函式儲存在 ProtocolVcContext 區域中的 控件會變成無效。

ProtocolCoDeleteVc 可以傳回任何驅動程序判斷NDIS_STATUS_XXX ,以無法刪除 VC,但 無法 傳回NDIS_STATUS_PENDING。 ProtocolCoDeleteVc 的呼叫本質上本質上是同步的。

例子

若要定義 ProtocolCoDeleteVc 函式,您必須先提供函式宣告,以識別您要定義的函式類型。 Windows 提供一組驅動程式的函式類型。 使用函式類型宣告函式有助於 驅動程式的程式代碼分析靜態驅動程序驗證器 (SDV) ,以及其他驗證工具會尋找錯誤,而且這是撰寫 Windows 操作系統驅動程式的需求。

例如,若要定義名為 「 MyCoDeleteVc」 的 ProtocolCoDeleteVc 函式,請使用 PROTOCOL_CO_DELETE_VC 類型,如下列程式碼範例所示:

PROTOCOL_CO_DELETE_VC MyCoDeleteVc;

然後,實作您的函式,如下所示:

_Use_decl_annotations_
NDIS_STATUS
 MyCoDeleteVc(
    NDIS_HANDLE  ProtocolVcContext
    )
  {...}

PROTOCOL_CO_DELETE_VC函式類型定義於 Ndis.h 頭檔中。 若要在執行程式代碼分析工具時更精確地識別錯誤,請務必將 Use_decl_annotations 註釋新增至函式定義。 Use_decl_annotations批注可確保使用頭檔中套用至PROTOCOL_CO_DELETE_VC函式類型的批注。 如需函式宣告需求的詳細資訊,請參閱 使用 NDIS 驅動程式的函式角色類型來宣告函式。

如需 Use_decl_annotations的詳細資訊,請參閱 標註函式行為

規格需求

需求
最低支援的用戶端 支援 NDIS 6.0 和 NDIS 5.1 驅動程式, (請參閱 Windows Vista 中的 ProtocolCoDeleteVc (NDIS 5.1) ) 。 支援 NDIS 5.1 驅動程式 (請參閱 Windows XP 中的 ProtocolCoDeleteVc (NDIS 5.1) ) 。
目標平台 Windows
標頭 ndis.h (包括 Ndis.h)
IRQL <= DISPATCH_LEVEL

另請參閱

NdisCloseCall

NdisCmDispatchIncomingCloseCall

NdisCoCreateVc

NdisCoDeleteVc

ProtocolCoCreateVc