FSCTL_SET_INTEGRITY_INFORMATION IOCTL (winioctl.h)
Ruft den Integritätsstatus einer Datei oder eines Verzeichnisses auf einem ReFS-Volume ab.
Um diesen Vorgang auszuführen, rufen Sie die Funktion DeviceIoControl mit den folgenden Parametern auf.
BOOL DeviceIoControl(
(HANDLE) hDevice, // handle to file or directory
FSCTL_SET_INTEGRITY_INFORMATION, // dwIoControlCode
(LPDWORD) pInBuffer, // FSCTL_SET_INTEGRITY_INFORMATION_BUFFER
(DWORD) InBufferSize, // size of input buffer
(LPDWORD) NULL, // pOutBuffer
(DWORD) 0, // OutBufferSize
(LPDWORD) NULL, // lpBytesReturned
(LPOVERLAPPED) lpOverlapped // OVERLAPPED structure
);
Hinweise
Die Integrität status kann nur für leere Dateien geändert werden.
Wenn replaceFile verwendet wird, um eine Datei durch integritätssatz zu ersetzen, und der lpBackupFileName-Parameter auf einen Speicherort verweist, an dem die Integrität nicht festgelegt ist, wird die Integrität status der ursprünglichen Datei nicht beibehalten.
Schreibvorgänge in Integritätsdatenströme sind immer clustergroß. Lesevorgänge aus Integritätsdatenströmen erfolgen immer in Blöcken mit 16 KB. Dies kann zu Lesefehlern führen, auch wenn sich der beschädigte Bereich außerhalb der zu lesenden Region befindet. Wenn beispielsweise 4 KB mit Offset 0 in einer Datei gelesen werden und eine Beschädigung ab 12 KB in der Datei auftritt, schlägt ein Lesevorgang mit ERROR_DATA_CHECKSUM_ERROR (0x143) fehl.
Anforderungen
Unterstützte Mindestversion (Client) | Nicht unterstützt |
Unterstützte Mindestversion (Server) | Windows Server 2012 [nur Desktop-Apps] |
Kopfzeile | winioctl.h (einschließlich Windows.h) |