IOCTL_EHSTOR_DEVICE_SET_QUEUE_STATE IOCTL (ehstorioctl.h)
La richiesta di IOCTL_EHSTOR_DEVICE_SET_QUEUE_STATE viene inviata da driver e applicazioni silo per modificare lo stato di una coda di dispositivi di archiviazione. Le richieste di I/O nella coda dei dispositivi di archiviazione vengono mantenute quando il dispositivo è temporaneamente non autorizzato.
Codice principale
Buffer di input
Il buffer di input in Irp-AssociatedIrp.SystemBuffer> contiene una struttura ACT_QUEUE_STATE. ACT_QUEUE_STATE viene dichiarato in ehstorioctl.h come indicato di seguito.
typedef struct tagACT_QUEUE_STATE
{
BOOLEAN fFrozen;
} ACT_QUEUE_STATE;
Lunghezza del buffer di input
Lunghezza di una struttura ACT_QUEUE_STATE .
Buffer di output
Nessuno.
Lunghezza del buffer di output
Nessuno.
Blocco dello stato
È possibile restituire uno dei valori seguenti nel campo Stato .
Valore di stato | Descrizione |
---|---|
STATUS_SUCCESS | Lo stato della coda è stato modificato correttamente. |
STATUS_INVALID_BUFFER_SIZE | La lunghezza del buffer di input è troppo piccola. |
STATUS_ACCESS_DENIED | La richiesta IOCTL non è stata eseguita da un driver silo. |
Commenti
I driver o le applicazioni silo possono bloccare la coda delle richieste di I/O del dispositivo di archiviazione se è necessaria l'annullamento dell'autenticazione temporanea. In genere, l'annullamento temporaneo si verifica durante gli stati a basso consumo o quando un criterio richiede il blocco di dispositivi di archiviazione avanzata, ad esempio una sessione utente bloccata. In questo caso, è preferibile mettere in attesa le richieste di I/O in sospeso anziché interrompere le richieste di I/O e causare la perdita di dati.
Per evitare abusi della richiesta di IOCTL_EHSTOR_DEVICE_SET_QUEUE_STATE da parte delle applicazioni, solo un driver può emettere questo IOCTL. Se inviato da un'applicazione in modalità utente, questa richiesta avrà esito negativo con STATUS_ACCESS_DENIED.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile a partire da Windows 8 |
Intestazione | ehstorioctl.h (include EhStorIoctl.h) |