Compartilhar via


Função IoReadPartitionTableEx (ntddk.h)

A rotina IoReadPartitionTableEx lê uma lista de partições em um disco com um tamanho de setor especificado e cria uma entrada na lista de partições para cada partição reconhecida.

Sintaxe

NTSTATUS IoReadPartitionTableEx(
  [in] PDEVICE_OBJECT               DeviceObject,
       _DRIVE_LAYOUT_INFORMATION_EX **DriveLayout
);

Parâmetros

[in] DeviceObject

Ponteiro para o objeto do dispositivo para o disco cujas partições devem ser lidas.

DriveLayout

Ponteiro para um endereço não inicializado. Se bem-sucedido, IoReadPartitionTableEx alocará a memória desse buffer do pool nãopagado e retornará as informações de layout da unidade nele.

Valor de retorno

Essa rotina retorna um valor de STATUS_SUCCESS se pelo menos uma tabela do setor foi lida. Caso contrário, ele retorna um valor de status de erro e define o ponteiro em PartitionBuffer para NULL.

Observações

IoReadPartitionTableEx só deve ser usado por drivers de disco. Em vez disso, outros drivers devem usar a solicitação de E/S do disco IOCTL_DISK_GET_DRIVE_LAYOUT_EX.

IoReadPartitionTableEx é capaz de ler informações da tabela de partição de discos da TABELA de Partição GUID (GPT), bem como discos herdados do Registro de Inicialização Mestra (MBR). Os drivers de dispositivo de disco chamam essa rotina durante a inicialização do driver.

É responsabilidade do chamador desalocar a PartitionBuffer que foi alocada por essa rotina com ExFreePool.

Observe que os drivers de disco também retornam e definem informações de partição em resposta a solicitações IRP_MJ_DEVICE_CONTROL com os seguintes códigos de controle de E/S:

IOCTL_DISK_GET_PARTITION_INFO_EX
IOCTL_DISK_SET_PARTITION_INFO_EX
IOCTL_DISK_GET_DRIVE_LAYOUT_EX
IOCTL_DISK_SET_DRIVE_LAYOUT_EX
IOCTL_DISK_GET_DRIVE_GEOMETRY

Requisitos

Requisito Valor
da Plataforma de Destino Universal
cabeçalho ntddk.h (inclua Ntddk.h)
biblioteca NtosKrnl.lib
de DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
regras de conformidade de DDI HwStorPortProhibitedDIs(storport), PowerIrpDDis(wdm)

Consulte também

DRIVE_LAYOUT_INFORMATION_EX

IOCTL_DISK_GET_DRIVE_GEOMETRY

IOCTL_DISK_GET_DRIVE_LAYOUT_EX

IOCTL_DISK_GET_PARTITION_INFO_EX

IOCTL_DISK_SET_DRIVE_LAYOUT_EX

IOCTL_DISK_SET_PARTITION_INFO_EX

IoSetPartitionInformation

IoWritePartitionTableEx

PARTITION_INFORMATION_EX