擷取 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)。
需求
| Requirement | 價值觀 |
|---|---|
| 最低支援的用戶端 | 不支援 |
| 支援的最低伺服器 | Windows Server 2012 [僅限傳統型應用程式] |
| Header | winioctl.h (包括 Windows.h) |