IOCTL_DISK_CREATE_DISK IOCTL (ntdddisk.h)

Cria uma partição vazia para o objeto de dispositivo. Ele pode operar em um disco EFI ou em um disco MBR. Os parâmetros necessários para criar um disco vazio dependem do tipo de tabela de partição que será colocada no disco. Para obter mais informações, consulte CREATE_DISK.

Os drivers de disco enumeram partições como se fossem dispositivos filho. Assim, ao criar a nova partição, o driver de classe de disco notifica o gerenciador PnP por meio de uma chamada para IoInvalidateDeviceRelations de que o dispositivo de disco tem um novo dispositivo filho (partição).

Código principal

IRP_MJ_DEVICE_CONTROL

Buffer de entrada

O buffer em Irp-AssociatedIrp.SystemBuffer> contém os dados CREATE_DISK.

Comprimento do buffer de entrada

Parameters.DeviceIoControl.InputBufferLength no local da pilha de E/S do IRP indica o tamanho, em bytes, do buffer disponibilizado para o driver, que deve ser >= sizeof(CREATE_DISK). Caso contrário, o driver retornará com um erro status de STATUS_INFO_LENGTH_MISMATCH.

Buffer de saída

Nenhum.

Comprimento do buffer de saída

Nenhum.

Bloco de status

O campo Informações é definido como zero. O campo Status será definido como STATUS_SUCCESS se a operação tiver sido bem-sucedida. Outros valores possíveis de status são: STATUS_NOT_SUPPORTED se não houver suporte para o estilo de partição solicitado; STATUS_DEVICE_NOT_READY se o driver de classe não conseguiu recuperar a geometria do disco; e STATUS_INSUFFICIENT_RESOURCES se o driver de classe não conseguiu obter um recurso necessário, como memória de heap.

Requisitos

Requisito Valor
Cabeçalho ntdddisk.h (inclua Ntdddisk.h)

Confira também

CREATE_DISK