共用方式為


NdisDeregisterProtocol 函式 (ndis.h)

注意 NDIS 5. x 已被取代,並被 NDIS 6 取代。 x。 如需新的 NDIS 驅動程式開發,請參閱 從 Windows Vista 開始的網路驅動程式。 如需移植 NDIS 5 的相關信息。 x 驅動程式至 NDIS 6。 x,請參閱 將 NDIS 5.x 驅動程式移植到 NDIS 6.0

NdisDeregisterProtocol 會釋放驅動程式呼叫 NdisRegisterProtocol 時所配置的資源。

語法

void NdisDeregisterProtocol(
  [out] PNDIS_STATUS Status,
  [in]  NDIS_HANDLE  NdisProtocolHandle
);

參數

[out] Status

呼叫端提供的變數指標,這個變數設定為NDIS_STATUS_SUCCESS從這個函式傳回。

[in] NdisProtocolHandle

指定驅動程式初始化時 ,NdisRegisterProtocol 所傳回的句柄。

傳回值

備註

已註冊的通訊協定驅動程式在下列任何情況下呼叫 NdisDeregisterProtocol

  • 驅動程式已經成功呼叫 NdisRegisterProtocol ,但無法繫結至機器中的任何基礎 NDIS 驅動程式。

  • 正在卸除驅動程式。 也就是說,呼叫初始化期間在其驅動程式對象中設定的 Unload 例程,或呼叫 ProtocolUnbindAdapter 函式來釋放驅動程式的最後一個剩餘系結。

    如需 Unload 例程和其他標準內核模式驅動程式例程的詳細資訊,請參閱 內核模式驅動程式元件

  • 系統正在關閉。 由於驅動程式是最高層級的通訊協定,在初始化 時稱為IoRegisterShutdownNotification ,因此已呼叫其Shutdown例程。

    如需詳細資訊 ,請參閱 IoRegisterShutdownNotification

如果通訊協定有任何開啟的系結,其 對 NdisDeregisterProtocol 的呼叫會導致 NDIS 針對每個開啟的系結呼叫通訊協定的 ProtocolUnbindAdapter 函 式一次。 ProtocolUnbindAdapter 會呼叫 NdisCloseAdapter 來關閉系結。

當未完成開啟時,如果有任何已關閉, NdisDeregisterProtocol 會釋放其呼叫端已設定並釋放配置來追蹤通訊協定驅動程式系結和篩選的記憶體 NDIS。

  • 目標平臺: 通用
  • 版本:Windows Vista 中不支援 NDIS 6.0 驅動程式。 請改用 NdisDeregisterProtocolDriver。 Windows Vista 和 Windows XP 中支援 NDIS 5.1 驅動程式。

規格需求

需求
標頭 ndis.h (包含 Ndis.h)
程式庫 Ndis.lib
IRQL PASSIVE_LEVEL

另請參閱