Fungsi WdfDeviceSetPowerCapabilities (wdfdevice.h)
[Berlaku untuk KMDF dan UMDF]
Metode WdfDeviceSetPowerCapabilities melaporkan kemampuan daya perangkat.
Sintaks
void WdfDeviceSetPowerCapabilities(
[in] WDFDEVICE Device,
[in] PWDF_DEVICE_POWER_CAPABILITIES PowerCapabilities
);
Parameter
[in] Device
Handel ke objek perangkat kerangka kerja.
[in] PowerCapabilities
Penunjuk ke struktur WDF_DEVICE_POWER_CAPABILITIES yang dialokasikan driver.
Nilai kembali
Tidak ada
Keterangan
Pemeriksaan bug terjadi jika driver menyediakan handel objek yang tidak valid.
Driver biasanya memanggil WdfDeviceSetPowerCapabilities dari dalam salah satu fungsi panggilan balik berikut:
-
EvtDeviceD0Entry (jika nilai parameter PreviousState adalah WdfPowerDeviceD3Final)
Contoh
Contoh kode berikut menginisialisasi struktur WDF_DEVICE_POWER_CAPABILITIES lalu memanggil WdfDeviceSetPowerCapabilities.
WDF_DEVICE_POWER_CAPABILITIES powerCaps;
WDF_DEVICE_POWER_CAPABILITIES_INIT(&powerCaps);
powerCaps.DeviceD1 = WdfTrue;
powerCaps.WakeFromD1 = WdfTrue;
powerCaps.DeviceWake = PowerDeviceD1;
powerCaps.DeviceState[PowerSystemWorking] = PowerDeviceD1;
powerCaps.DeviceState[PowerSystemSleeping1] = PowerDeviceD1;
powerCaps.DeviceState[PowerSystemSleeping2] = PowerDeviceD2;
powerCaps.DeviceState[PowerSystemSleeping3] = PowerDeviceD2;
powerCaps.DeviceState[PowerSystemHibernate] = PowerDeviceD3;
powerCaps.DeviceState[PowerSystemShutdown] = PowerDeviceD3;
WdfDeviceSetPowerCapabilities(
device,
&powerCaps
);
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Universal |
Versi KMDF minimum | 1,0 |
Versi UMDF minimum | 2.0 |
Header | wdfdevice.h (termasuk Wdf.h) |
Pustaka | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
Aturan kepatuhan DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |