共用方式為


EVT_NET_DEVICE_PREVIEW_POWER_OFFLOAD回呼函式 (netdevice.h)

實作這個選擇性回呼,以拒絕與硬體不相容的通訊協定卸除。

語法

EVT_NET_DEVICE_PREVIEW_POWER_OFFLOAD EvtNetDevicePreviewPowerOffload;

NTSTATUS EvtNetDevicePreviewPowerOffload(
  [_In_] WDFDEVICE Device,
  [_In_] NETPOWEROFFLOAD PowerOffload
)
{...}

參數

[_In_] Device

用戶端驅動程式先前透過呼叫 WdfDeviceCreate 取得的 WDFDEVICE 物件。

[_In_] PowerOffload

NETPOWEROFFLOAD 物件,表示要檢查的低電源通訊協定卸除。

傳回值

若要接受通訊協定卸除,回呼函式必須傳回STATUS_SUCCESS。

若要拒絕通訊協定卸除,請傳回STATUS_NDIS_PM_PROTOCOL_OFFLOAD_LIST_FULL。

備註

驅動程式不需要實作 EvtNetDevicePreviewPowerOffload,因為 NetAdapterCx 已封鎖與驅動程式電源卸除功能不相容的通訊協定卸除: NET_ADAPTER_POWER_OFFLOAD_ARP_CAPABILITIESNET_ADAPTER_POWER_OFFLOAD_NS_CAPABILITIES。 不過,如果您的硬體有無法在這些功能結構中表示的額外限制,您可以提供 EvtNetDevicePreviewPowerOffload 來強制執行這些額外限制。

設定 NET_DEVICE_POWER_POLICY_EVENT_CALLBACKS的適當成員,然後呼叫 NetDeviceInitSetPowerPolicyEventCallbacks 來註冊此回呼函式的實作。

客戶端驅動程式通常會在建立裝置物件之前呼叫 NetDeviceInitSetPowerPolicyEventCallbacks ,再呼叫 WdfDeviceCreate

在此回呼中,客戶端驅動程式有機會拒絕通訊協定卸除。 例如,如果裝置目前通訊協定卸除清單中的通訊協定卸除 數目已達到 或超過硬體支援的通訊協定卸除數目,驅動程式可以拒絕此通訊協定卸除。

如需詳細資訊,請參閱 設定電源管理

規格需求

需求
最低支援的用戶端 Windows 10 (版本 2004)
最低UMDF版本 2.33
標頭 netdevice.h (包含 netadaptercx.h)
IRQL PASSIVE_LEVEL