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
IOCTL_DISK_GET_DRIVE_LAYOUT_EX
IOCTL_DISK_GET_PARTITION_INFO_EX
IOCTL_DISK_SET_DRIVE_LAYOUT_EX