Condividi tramite


IOCTL_DISK_GET_DRIVE_LAYOUT_EX IOCTL (ntdddisk.h)

Restituisce informazioni sul numero di partizioni, firma del disco e funzionalità di ogni partizione in un disco. I driver floppy non devono gestire questa richiesta.

Codice principale

IRP_MJ_DEVICE_CONTROL

Buffer di input

Nessuno.

Lunghezza del buffer di input

Nessuno.

Buffer di output

Il driver restituisce i dati DRIVE_LAYOUT_INFORMATION_EX nel buffer in Irp-AssociatedIrp.SystemBuffer>.

Lunghezza del buffer di output

Parameters.DeviceIoControl.OutputBufferLength nella posizione dello stack I/O di IRP indica le dimensioni, in byte, del buffer, che devono essere >= sizeof(DRIVE_LAYOUT_INFORMATION_EX). Si noti che questa struttura contiene una matrice di dimensioni variabili di PARTITION_INFORMATION_EX elementi.

Per determinare le dimensioni del buffer di output necessario, il chiamante deve inviare questa richiesta IOCTL in un ciclo. Ogni volta che lo stack di archiviazione rifiuta IOCTL con un messaggio di errore che indica che il buffer era troppo piccolo, il chiamante deve raddoppiare le dimensioni del buffer.

Blocco dello stato

Il campo Informazioni è impostato sulle dimensioni, in byte, dei dati restituiti. Il campo Stato può essere impostato su STATUS_SUCCESS o su STATUS_INFO_LENGTH_MISMATCH, STATUS_INSUFFICIENT_RESOURCES o STATUS_BUFFER_TOO_SMALL.

Requisiti

Requisito Valore
Intestazione ntdddisk.h (include Ntdddisk.h)

Vedi anche

DRIVE_LAYOUT_INFORMATION

PARTITION_INFORMATION

PARTITION_INFORMATION_EX