IOCTL_VOLUME_LOGICAL_TO_PHYSICAL IOCTL (ntddvol.h)
Retorna deslocamentos físicos e números de disco físico para um determinado deslocamento lógico de volume.
Por exemplo, um deslocamento de volume lógico dentro de um volume espelhado com dois plex corresponde a dois deslocamentos físicos, um em cada um dos dois discos que participam do espelho. Em resposta a esse IOCTL, o gerenciador de volumes retorna dois deslocamentos físicos e dois números de disco físico para o deslocamento de volume lógico.
O gerenciador de volumes dá suporte a esse IOCTL para todos os tipos de volumes básicos e dinâmicos.
Código principal
Buffer de entrada
O chamador insere a estrutura VOLUME_LOGICAL_OFFSET que contém o deslocamento lógico no início do buffer em Irp-AssociatedIrp.SystemBuffer>.
Comprimento do buffer de entrada
Parameters.DeviceIoControl.InputBufferLength no local da pilha de E/S do IRP indica o tamanho, em bytes, do buffer de entrada, que deve ser maior ou igual ao valor de sizeof(VOLUME_LOGICAL_OFFSET).Buffer de saída
O tamanho do buffer de saída deve ser grande o suficiente para manter a estrutura VOLUME_PHYSICAL_OFFSETS, que contém uma matriz de comprimento variável de estruturas do tipo VOLUME_PHYSICAL_OFFSET.
O gerenciador de volumes retorna um ou mais deslocamentos físicos e números de disco na estrutura VOLUME_PHYSICAL_OFFSETS no início do buffer, em Irp-AssociatedIrp.SystemBuffer>.
Comprimento do buffer de saída
Parameters.DeviceIoControl.OutputBufferLength no local da pilha de E/S do IRP indica o tamanho, em bytes, do buffer de saída.
Bloco de status
Se a operação for bem-sucedida, o membro Status será definido como STATUS_SUCCESS. Caso contrário, o membro Status será definido como o código de erro apropriado. Os códigos de erro possíveis incluem o seguinte:
STATUS_BUFFER_TOO_SMALL
O buffer de saída é muito pequeno. O gerenciador de volumes define o membro Irp-IoStatus.Information> como o tamanho do buffer de saída que o chamador deveria ter fornecido.
STATUS_INVALID_PARAMETER
O buffer de entrada é muito pequeno.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível a partir do Windows XP. |
Cabeçalho | ntddvol.h (inclua Ntddvol.h) |