FSCTL_SET_INTEGRITY_INFORMATION IOCTL (winioctl.h)

擷取 ReFS 磁片區上檔案或目錄的完整性狀態。

若要執行這項作業,請使用下列參數呼叫 DeviceIoControl 函式。

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
);

備註

完整性狀態只能針對空白檔案進行變更。

如果使用 ReplaceFile 將檔案取代為完整性集, 而 lpBackupFileName 參數會指向沒有完整性設定的位置,則不會保存原始檔案的完整性狀態。

寫入完整性資料流程一律為叢集大小。 從完整性資料流程讀取一律會在 16 KB 區塊中完成。 這可能會導致讀取失敗,即使損毀的區域超出正在讀取的區域也是如此。 例如,如果在檔案中的位移 0 讀取 4 KB,而且檔案中從 12 KB 開始發生損毀,則讀取將會失敗, ERROR_DATA_CHECKSUM_ERROR (0x143) 。

規格需求

   
最低支援的用戶端 都不支援
最低支援的伺服器 Windows Server 2012 [僅限傳統型應用程式]
標頭 winioctl.h (包含 Windows.h)

另請參閱