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_CAPABILITIES 和 NET_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 |