IOCTL_DISK_GET_DRIVE_LAYOUT_EX IOCTL (ntdddisk.h)
Gibt Informationen über die Anzahl der Partitionen, die Datenträgersignatur und die Features jeder Partition auf einem Datenträger zurück. (Diskettentreiber müssen diese Anforderung nicht verarbeiten.)
Hauptcode
Eingabepuffer
Keine.
Eingabepufferlänge
Keine.
Ausgabepuffer
Der Treiber gibt die DRIVE_LAYOUT_INFORMATION_EX Daten im Puffer bei Irp-AssociatedIrp.SystemBuffer> zurück.
Länge des Ausgabepuffers
Parameters.DeviceIoControl.OutputBufferLength in der E/A-Stapelposition des IRP gibt die Größe des Puffers in Bytes an, die = sizeof(DRIVE_LAYOUT_INFORMATION_EX) sein >muss. Beachten Sie, dass diese Struktur ein Array von PARTITION_INFORMATION_EX Elementen mit variabler Größe enthält.
Um die erforderliche Größe des Ausgabepuffers zu bestimmen, sollte der Aufrufer diese IOCTL-Anforderung in einer Schleife senden. Jedes Mal, wenn der Speicherstapel die IOCTL mit einer Fehlermeldung ablehnt, die angibt, dass der Puffer zu klein war, sollte der Aufrufer die Puffergröße verdoppeln.
Statusblock
Das Feld Information ist auf die Größe der zurückgegebenen Daten in Bytes festgelegt. Das Feld Status kann auf STATUS_SUCCESS oder möglicherweise auf STATUS_INFO_LENGTH_MISMATCH, STATUS_INSUFFICIENT_RESOURCES oder STATUS_BUFFER_TOO_SMALL festgelegt werden.
Anforderungen
Anforderung | Wert |
---|---|
Header | ntdddisk.h (include Ntdddisk.h) |