共用方式為


NdisIMNotifyPnPEvent 函式 (ndis.h)

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

NdisIMNotifyPnPEvent 會將 隨插即用 或 Power Management 事件的通知傳播至過度運作的驅動程式。

語法

NDIS_STATUS NdisIMNotifyPnPEvent(
  [in] NDIS_HANDLE    MiniportHandle,
  [in] PNET_PNP_EVENT NetPnPEvent
);

參數

[in] MiniportHandle

MiniportInitialize 的句柄輸入。 此句柄代表受到傳遞至呼叫端 ProtocolPnPEvent 函式之 隨插即用 或 Power Management 事件影響的迷你埠驅動程式。

[in] NetPnPEvent

NET_PNP_EVENT 結構的指標,其描述對通訊協定驅動程式指示 隨插即用 事件或Power Management事件。

傳回值

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

傳回碼 Description
NDIS_STATUS_SUCCESS 過度裝載的驅動程式成功傳播 隨插即用 事件成功。
NDIS_STATUS_FAILURE 過度裝載的驅動程式無法傳播 隨插即用 事件。

只有在傳播的事件是 NetEventQueryPowerNetEventQueryRemove 時,傳回值才會顯著。 對於所有其他傳播的事件,傳回值一律NDIS_STATUS_SUCCESS。

備註

NDIS 中繼驅動程式會在驅動程式的 ProtocolPnPEvent 函式內容中呼叫 NdisIMNotifyPnPEvent,以將 隨插即用 或 Power Management 事件的通知傳播至過度配置驅動程式。

如果傳播的事件是 NetEventQueryPowerNetEventQueryRemove,中繼驅動程式必須檢查 NdisIMNotifyPnPEvent 所傳回的NDIS_STATUS值。 如果傳回的狀態NDIS_STATUS_SUCCESS,中繼驅動程序應該如往常般處理事件,然後從其 ProtocolPnPEvent 函式傳回NDIS_STATUS_SUCCESS。 如果傳回的狀態NDIS_STATUS_FAILURE,中繼驅動程序應該從其 ProtocolPnPEvent 傳回NDIS_STATUS_FAILURE,而不需進一步處理。

對於所有其他傳播的事件, NdisIMNotifyPnPEvent 一律會傳回NDIS_STATUS_SUCCESS。 在這種情況下,中繼驅動程式的 ProtocolPnPEvent 函式應該傳播 NdisIMNotifyPnPEvent 所傳回的NDIS_STATUS。

中繼驅動程式如何處理其 ProtocolPnPEvent 函式所接收的 NetEventSetPower,取決於指定的裝置電源狀態。 如果指定的裝置電源狀態為 NdisDeviceStateD0,中繼驅動程式應該如往常般在內部處理事件,然後呼叫 NdisIMNotifyPnPEvent。 針對任何其他指定的裝置電源狀態,中繼驅動程式應該先呼叫 NdisIMNotifyPnPEvent ,然後如往常般在內部處理事件。

中繼驅動程式應該呼叫 NdisIMNotifyPnPEvent 來傳播 NetEventReconfigureNetEventBindList,只有當 NetEventReconfigure 或 NetEventBindList 在非 NULL通訊協定BindingContext 上指出時才傳播 NetEventBindList 如果在 NULLProtocolBindingContext 上指出 NetEventReconfigureNetEventBindList,中繼驅動程式不應該呼叫 NdisIMNotifyPnPEvent 來傳播事件。

如果中繼驅動程序處理 NetEventReconfigureNetEventBindList,它應該驗證與事件相關聯的任何數據。 (如需這類數據的詳細資訊,請參閱 通訊協定驅動程式的NET_PNP_EVENT。)

Windows XP 和更新版本提供 NdisIMNotifyPnPEvent 的系統支援。

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

規格需求

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

另請參閱