IOCTL_STORAGE_DEVICE_POWER_CAP IOCTL (winioctl.h)
Aplikasi Windows dapat menggunakan kode kontrol ini untuk menentukan tingkat konsumsi daya operasional maksimum untuk perangkat penyimpanan. OS akan melakukan yang terbaik untuk transisi perangkat ke status daya yang tidak akan melebihi maksimum yang diberikan. Namun, ini tergantung pada apa yang didukung perangkat. Maksimum aktual mungkin kurang dari atau lebih besar dari maksimum yang diinginkan.
Untuk melakukan operasi ini, panggil fungsi DeviceIoControl dengan parameter berikut.
BOOL DeviceIoControl(
(HANDLE) hDevice, // handle to device
IOCTL_STORAGE_DEVICE_POWER_CAP, // dwIoControlCode
(LPDWORD) lpInBuffer, // input buffer
(DWORD) nInBufferSize, // size of input buffer
(LPDWORD) lpOutBuffer, // output buffer
(DWORD) nOutBufferSize, // size of output buffer
(LPDWORD) lpBytesReturned, // number of bytes returned
(LPOVERLAPPED) lpOverlapped // OVERLAPPED structure
);
Keterangan
IOCTL ini dikirim ke driver perangkat dengan nilai daya maksimum yang diharapkan untuk dihormati driver. IOCTL ini kemudian kembali dengan nilai yang mewakili apa yang sebenarnya mampu dicapai oleh driver perangkat. Nilai ini bisa sama dengan, kurang dari, atau lebih besar dari nilai yang diinginkan yang dikirim awalnya.
Misalnya, pertimbangkan driver perangkat penyimpanan yang menerapkan tiga status daya operasional yang memiliki tingkat konsumsi daya maksimum 10 watt, 8 watt, dan 6 watt. Jika penelepon IOCTL ini menentukan bahwa perangkat tidak boleh mengonsumsi lebih dari 9 watt, ia harus memilih status 8 watt karena itu adalah keadaan tertinggi yang dimilikinya yang masih kurang dari 9 watt. Jika pemanggil IOCTL ini menentukan bahwa perangkat tidak boleh menggunakan lebih dari 5 watt, driver perangkat akan memilih status 6 watt karena 6 watt adalah nilai minimum yang dapat digunakan perangkat.
Persyaratan
Klien minimum yang didukung | Windows 10 |
Server minimum yang didukung | Server Windows 2016 |
Header | winioctl.h (termasuk Windows.h) |