MINIPORT_CO_DEACTIVATE_VC回呼函式 (ndis.h)
聯機導向迷你埠需要 MiniportCoDeactivateVc 函式。 MiniportCoDeactivateVc 是由 NDIS 呼叫,表示 VC 標示為無法使用。
語法
MINIPORT_CO_DEACTIVATE_VC MiniportCoDeactivateVc;
NDIS_STATUS MiniportCoDeactivateVc(
[in] NDIS_HANDLE MiniportVcContext
)
{...}
參數
[in] MiniportVcContext
指定迷你埠驅動程式配置的內容區域的句柄,迷你埠驅動程式會維護每個 VC 的狀態資訊。 迷你埠驅動程式會從其 MiniportCoCreateVc 函式提供此句柄給 NDIS。
傳回值
傳回碼 | 描述 |
---|---|
|
表示迷你埠驅動程式已成功停止跨 VC 的任何通訊,並將它標示為無法使用。 |
|
表示迷你埠驅動程式會完成要求,以異步方式停止 VC。 當迷你埠驅動程式完成停止 VC 時,它必須接著呼叫 NdisMCoDeactivateVcComplete,以向 NDIS 發出此作業已完成的訊號。 |
言論
MiniportCoDeactivateVc 與其網路適配器通訊,以終止此 VC 的所有通訊(換句話說,取消程式化接收或傳送適配卡上的緩衝區)。 迷你埠驅動程式也應該將 VC 及其內容區域標示為非使用中,以防止跨 VC 進行任何進一步的通訊。
呼叫 MiniportCoActivateVc 和 MiniportCoDeactivateVc之間沒有一對一關聯性。 雖然 NDIS 可能會在單一 VC 上多次呼叫 MiniportCoActivateVc,但只會呼叫 MiniportCoDeactivateVc 來關閉虛擬連線。 例如,VC 可以重複使用給不同的呼叫,可能會導致多個呼叫 MiniportCoActivateVc。
範例
若要定義 MiniportCoDeactivateVc 函式,您必須先提供函式宣告,以識別您要定義的函式類型。 Windows 提供一組驅動程式的函式類型。 使用函式類型宣告函式有助於 驅動程式的程式代碼分析、靜態驅動程序驗證器 (SDV)和其他驗證工具尋找錯誤,而且是撰寫 Windows作系統驅動程式的需求。例如,若要定義名為 「MyCoDeactivateVc」 的 MiniportCoDeactivateVc 函式,請使用 MINIPORT_CO_DEACTIVATE_VC 類型,如下列程式代碼範例所示:
MINIPORT_CO_DEACTIVATE_VC MyCoDeactivateVc;
然後,實作您的函式,如下所示:
_Use_decl_annotations_
NDIS_STATUS
MyCoDeactivateVc(
NDIS_HANDLE MiniportVcContext
)
{...}
MINIPORT_CO_DEACTIVATE_VC 函式類型定義於 Ndis.h 頭檔中。 若要在執行程式代碼分析工具時更準確地識別錯誤,請務必將 Use_decl_annotations 批註新增至函式定義。 Use_decl_annotations 批注可確保會使用套用至頭檔中 MINIPORT_CO_DEACTIVATE_VC 函式類型的批注。 如需函式宣告需求的詳細資訊,請參閱 使用 NDIS 驅動程式的函式角色類型來宣告函式。
如需 Use_decl_annotations的相關信息,請參閱 批注函式行為。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 支援 Windows Vista 中的 NDIS 6.0 和 NDIS 5.1 驅動程式(請參閱 MiniportCoDeactivateVc (NDIS 5.1)。 支援 Windows XP 中的 NDIS 5.1 驅動程式 (請參閱 MiniportCoDeactivateVc (NDIS 5.1)。 |
目標平臺 | 窗戶 |
標頭 | ndis.h (包括 Ndis.h) |
IRQL | <= DISPATCH_LEVEL |