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。
傳回值
傳回碼 | Description |
---|---|
|
表示迷你埠驅動程式已成功停止 VC 間的任何通訊,並將它標示為無法使用。 |
|
表示迷你埠驅動程式會完成以異步方式停止 VC 的要求。 當迷你埠驅動程式完成停止 VC 時,必須接著呼叫 NdisMCoDeactivateVcComplete 表示此作業已完成。 |
備註
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的詳細資訊,請參閱 標註函式行為。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 支援 NDIS 6.0 和 NDIS 5.1 驅動程式 (請參閱 Windows Vista 中的 MiniportCoDeactivateVc (NDIS 5.1) ) 。 支援 NDIS 5.1 驅動程式 (請參閱 Windows XP 中的 MiniportCoDeactivateVc (NDIS 5.1) ) 。 |
目標平台 | Windows |
標頭 | ndis.h (包含 Ndis.h) |
IRQL | <= DISPATCH_LEVEL |