FSCTL_LOOKUP_STREAM_FROM_CLUSTER IOCTL (winioctl.h)
Gibt ein Handle für ein NTFS-Volume oder eine Datei auf einem NTFS-Volume zurück, gibt eine Kette von Datenstrukturen zurück, die Datenströme beschreibt, die die angegebenen Cluster belegen.
Wichtig
FSCTL_LOOKUP_STREAM_FROM_CLUSTER ist ein sehr ressourcenintensiver Vorgang und benötigt in der Regel eine sehr große Menge an Datenträgerbandbreite, Arbeitsspeicher und Zeit. Es ist unwahrscheinlich, dass viele dieser Informationen im Cache verbleiben, sodass ein zweiter Aufruf von FSCTL_LOOKUP_STREAM_FROM_CLUSTER fast so lange dauern würde wie der erste Aufruf. Für mehrere Nachschlagevorgänge ist es effizienter , FSCTL_ENUM_USN_DATA zu verwenden, um jeden MFT-Datensatz aufzulisten und dann FSCTL_GET_RETRIEVAL_POINTERS zu verwenden, um die Daten für die Zuordnung zwischen Clustern und Datenströmen zu sammeln.
Um diesen Vorgang auszuführen, rufen Sie die Funktion DeviceIoControl mit den folgenden Parametern auf.
BOOL DeviceIoControl(
(HANDLE) hDevice, // handle to file, directory, or volume
FSCTL_LOOKUP_STREAM_FROM_CLUSTER, // 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
);
Hinweise
In Windows 8 und Windows Server 2012 wird dieser Code von den folgenden Technologien unterstützt.
Technologie | Unterstützt |
---|---|
SMB 3.0-Protokoll (Server Message Block) | No |
SMB 3.0 Transparent Failover (TFO) | No |
SMB 3.0 mit Dateifreigaben mit horizontaler Skalierung (SO) | No |
Dateisystem mit freigegebenen Clustervolumes (CsvFS) | Ja |
Anforderungen
Unterstützte Mindestversion (Client) | Windows 7 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2 [nur Desktop-Apps] |
Kopfzeile | winioctl.h (einschließlich Windows.h) |