FSCTL_GET_RETRIEVAL_POINTERS IOCTL (winioctl.h)
Dado um identificador de arquivo, recupera uma estrutura de dados que descreve a alocação e o local no disco de um arquivo específico ou, dado um identificador de volume, os locais de clusters inválidos em um volume.
Para executar essa operação, chame a função DeviceIoControl com os parâmetros a seguir.
DeviceIoControl(
(HANDLE) hDevice, // handle to file, directory, or volume
FSCTL_GET_RETRIEVAL_POINTERS, // dwIoControlCode
(LPVOID) lpInBuffer, // input buffer
(DWORD) nInBufferSize, // size of input buffer
(LPVOID) lpOutBuffer, // output buffer
(DWORD) nOutBufferSize, // size of output buffer
(LPDWORD) lpBytesReturned, // number of bytes returned
(LPOVERLAPPED) lpOverlapped // OVERLAPPED structure
);
Comentários
A operação FSCTL_GET_RETRIEVAL_POINTERS recupera uma estrutura de dados de tamanho variável que descreve a alocação e o local no disco de um arquivo específico. A estrutura descreve o mapeamento entre números de cluster virtual (deslocamentos de VCN dentro do espaço de fluxo ou arquivo) e números de cluster lógico (deslocamentos de LCN dentro do espaço de volume).
O código de controle FSCTL_GET_RETRIEVAL_POINTERS tem suporte para operações de arquivo ou diretório em sistemas de arquivos NTFS, FAT, exFAT, UDF e ReFS.
Em sistemas de arquivos com suporte, a operação FSCTL_GET_RETRIEVAL_POINTERS retorna os locais de extensão de dados não residentes. Os dados residentes nunca têm locais de extensão.
O código de controle FSCTL_GET_RETRIEVAL_POINTERS também dá suporte à funcionalidade alternativa de localizar clusters inválidos. Para consultar os locais de clusters inválidos em um volume formatado com NTFS, FAT ou exFAT, use um identificador de volume como o parâmetro hDevice . Essa funcionalidade só tem suporte no NTFS, FAT e exFAT, e o chamador deve ter MANAGE_VOLUME_ACCESS permissão para o volume.
Para obter as implicações de E/S sobrepostas nessa operação, consulte a seção Comentários do tópico DeviceIoControl .
Em Windows 8 e Windows Server 2012, esse código é compatível com as tecnologias a seguir.
Tecnologia | Com suporte |
---|---|
Protocolo SMB (SMB) 3.0 | No |
TFO (Failover transparente) do SMB 3.0 | No |
SMB 3.0 com compartilhamentos de arquivos de expansão (SO) | No |
Sistema de arquivos de Volume Compartilhado Clusterizado (CsvFS) | Sim |
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Cabeçalho | winioctl.h (inclua Windows.h) |