Partager via


IOCTL_DISK_CREATE_DISK IOCTL (ntdddisk.h)

Crée une partition vide pour l’objet d’appareil. Il peut fonctionner sur un disque EFI ou un disque MBR. Les paramètres nécessaires pour créer un disque vide dépendent du type de table de partition qui sera placé sur le disque. Pour plus d’informations, consultez CREATE_DISK.

Les pilotes de disque énumèrent les partitions comme s’ils étaient des appareils enfants. Ainsi, lors de la création de la nouvelle partition, le pilote de classe de disque avertit le gestionnaire PnP au moyen d’un appel à IoInvalidateDeviceRelations que l’appareil disque a un nouvel appareil enfant (partition).

Code principal

IRP_MJ_DEVICE_CONTROL

Mémoire tampon d’entrée

La mémoire tampon à Irp->AssociatedIrp.SystemBuffer contient les données CREATE_DISK.

Longueur de la mémoire tampon d’entrée

Parameters.DeviceIoControl.InputBufferLength à l’emplacement de la pile d’E/S de l’IRP indique la taille, en octets, de la mémoire tampon mise à la disposition du pilote, qui doit être >= sizeof(CREATE_DISK). Sinon, le pilote retourne un état d’erreur de STATUS_INFO_LENGTH_MISMATCH.

Mémoire tampon de sortie

Aucun.

Longueur de la mémoire tampon de sortie

Aucun.

Bloc d’état

Le champ Informations est défini sur zéro. Le champ d’état est défini sur STATUS_SUCCESS si l’opération a réussi. Les autres valeurs d’état possibles sont les suivantes : STATUS_NOT_SUPPORTED si le style de partition demandé n’est pas pris en charge ; STATUS_DEVICE_NOT_READY si le pilote de classe n’a pas pu récupérer la géométrie du disque ; et STATUS_INSUFFICIENT_RESOURCES si le pilote de classe n’a pas pu obtenir une ressource nécessaire, telle que la mémoire du tas.

Exigences

Exigence Valeur
d’en-tête ntdddisk.h (include Ntdddisk.h)

Voir aussi

CREATE_DISK