Condividi tramite


IOCTL_STORAGE_DEVICE_POWER_CAP IOCTL (winioctl.h)

Le applicazioni Windows possono usare questo codice di controllo per specificare un livello massimo di consumo di energia operativa per un dispositivo di archiviazione. Il sistema operativo eseguirà la transizione del dispositivo a uno stato di alimentazione che non supererà il massimo specificato. Ciò dipende tuttavia dal supporto del dispositivo. Il massimo effettivo può essere minore o maggiore del massimo desiderato.

Per eseguire questa operazione, chiamare la funzione DeviceIoControl con i parametri seguenti.

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
);

Commenti

Questo IOCTL viene inviato al driver del dispositivo con un valore massimo di potenza previsto dal driver. Questo IOCTL restituisce quindi con un valore che rappresenta il driver del dispositivo in grado di raggiungere. Questo valore può essere uguale, minore o maggiore del valore desiderato inviato originariamente.

Si consideri, ad esempio, un driver di dispositivo di archiviazione che implementa tre stati di potenza operativa che hanno un livello massimo di consumo energetico di 10 watt, 8 watt e 6 watt. Se il chiamante di questo IOCTL specifica che il dispositivo non deve utilizzare più di 9 watt, deve scegliere il suo stato 8 watt perché è lo stato più alto che ha ancora meno di 9 watt. Se il chiamante di questo IOCTL specifica che il dispositivo non deve utilizzare più di 5 watt, il driver del dispositivo sceglierà lo stato di 6 watt perché 6 watt è il valore minimo in cui il dispositivo può funzionare.

Requisiti

   
Client minimo supportato Windows 10
Server minimo supportato Windows Server 2016
Intestazione winioctl.h (include Windows.h)

Vedi anche