FSCTL_GET_RETRIEVAL_POINTERS IOCTL (winioctl.h)
Dato un handle di file, recupera una struttura di dati che descrive l'allocazione e la posizione su disco di un file specifico oppure, dato un handle di volume, i percorsi dei cluster non valido in un volume.
Per eseguire questa operazione, chiamare la funzione DeviceIoControl con i parametri seguenti.
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
);
Commenti
L'operazione di FSCTL_GET_RETRIEVAL_POINTERS recupera una struttura di dati di dimensioni variabili che descrive l'allocazione e il percorso su disco di un file specifico. La struttura descrive il mapping tra i numeri del cluster virtuale (offset VCN all'interno dello spazio di file o flusso) e i numeri di cluster logici (offset LCN all'interno dello spazio del volume).
Il codice di controllo FSCTL_GET_RETRIEVAL_POINTERS è supportato per le operazioni di file o directory nei file system NTFS, FAT, exFAT, UDF e ReFS.
Nei file system supportati, l'operazione di FSCTL_GET_RETRIEVAL_POINTERS restituisce i percorsi extent dei dati non rientri. I dati residenti non hanno mai posizioni extent.
Il codice di controllo FSCTL_GET_RETRIEVAL_POINTERS supporta anche la funzionalità alternativa di individuazione di cluster non valido. Per eseguire una query per i percorsi dei cluster non corretti in un volume formattato con NTFS, FAT o exFAT, usare un handle di volume come parametro hDevice . Questa funzionalità è supportata solo in NTFS, FAT e exFAT e il chiamante deve avere MANAGE_VOLUME_ACCESS l'autorizzazione per il volume.
Per le implicazioni dell'I/O sovrapposto in questa operazione, vedere la sezione Osservazioni dell'argomento DeviceIoControl .
In Windows 8 e Windows Server 2012 questo codice è supportato dalle tecnologie seguenti.
Tecnologia | Supportato |
---|---|
Protocollo SMB (Server Message Block) 3.0 | No |
Failover trasparente SMB 3.0 (TFO) | No |
SMB 3.0 con condivisioni file di scalabilità orizzontale (SO) | No |
File system del volume condiviso cluster (CsvFS) | Sì |
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Intestazione | winioctl.h (include Windows.h) |