共用方式為


註冊 NDIS 選擇性暫停處理常式函式

如果迷你埠驅動程式支援 NDIS 選擇性暫停,NDIS 會通知驅動程式基礎網路介面卡已閒置。 迷你埠驅動程式必須提供下列函式來處理這些閒置通知:

MiniportIdleNotification
NDIS 會呼叫 MiniportIdleNotification 處理常式函式,通知迷你埠驅動程式網路介面卡已閒置。 迷你埠驅動程式會藉由判斷網路介面卡是否可以轉換為低電源狀態,來處理閒置通知。 迷你埠驅動程式會以匯流排特定的方式執行此判斷。

例如,USB 迷你埠驅動程式會發出 I/O 要求封包 (IRP) ,以判斷網路介面卡是否可以轉換至低電源狀態,以取得 USB 閒置要求 ( () IOCTL_INTERNAL_USB_SUBMIT_IDLE_NOTIFICATION 基礎 USB 匯流排驅動程式。 透過此 IRP 的處理,迷你埠驅動程式會收到介面卡閒置且可轉換為低電源狀態的通知。

MiniportCancelIdleNotification
NDIS 會呼叫 MiniportCancelIdleNotification 處理常式函式來取消未處理的閒置通知。 呼叫此函式時,迷你埠驅動程式會取消先前針對閒置通知發出的任何匯流排特定 IRP。

例如,呼叫 MiniportCancelIdleNotification 時,USB 迷你埠必須取消先前發行的 USB 閒置要求 IRP。 取消 IRP 時,迷你埠驅動程式會收到通知,指出介面卡現在可以轉換為全電源狀態。

呼叫迷你埠驅動程式的 DriverEntry 函式時,驅動程式會遵循下列步驟來註冊其 NDIS 選擇性暫停處理常式函式:

  1. 迷你埠驅動程式必須將NDIS_MINIPORT_DRIVER_CHARACTERISTICS結構的SetOptionsHandler成員設定為驅動程式MiniportSetOptions函式的進入點。 驅動程式會呼叫 NdisMRegisterMiniportDriver ,向 NDIS 註冊其 NDIS_MINIPORT_DRIVER_CHARACTERISTICS 結構。

  2. NDIS 會在呼叫 NdisMRegisterMiniportDriver的內容中呼叫MiniportSetOptions函式。

    呼叫 MiniportSetOptions 時,迷你埠驅動程式會使用處理程式函式的指標,初始化 NDIS_MINIPORT_SS_CHARACTERISTICS 結構。 迷你埠驅動程式接著會呼叫 NdisSetOptionalHandlers ,並將 OptionalHandlers 參數設定為 NDIS_MINIPORT_SS_CHARACTERISTICS 結構的指標。

如需如何處理 NDIS 選擇性暫停閒置通知的詳細資訊,請參閱 NDIS 選擇性暫停閒置通知