FSCTL_ENUM_USN_DATA IOCTL (winioctl.h)
列舉兩個指定界限之間的更新序號 (USN) 資料,以取得主要檔案資料表 (MFT) 記錄。
若要執行這項作業,請使用下列參數呼叫 DeviceIoControl 函式。
C++ |
---|
BOOL WINAPI DeviceIoControl( (HANDLE) hDevice, // handle to volume (DWORD) FSCTL_ENUM_USN_DATA, // 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); |
備註
如需此作業上重迭 I/O 的影響,請參閱 DeviceIoControl 主題的一節。
若要列舉磁片區上的檔案,請使用 FSCTL_ENUM_USN_DATA 作業一或多次。 在第一次呼叫時,將MFT_ENUM_DATA結構的 (DWORDLONG)0
StartFileReferenceNumber成員設定為 。 每次呼叫 FSCTL_ENUM_USN_DATA 擷取後續呼叫的起點做為輸出緩衝區中的第一個專案。
藉由比較 若要識別磁片區最近的變更,請使用 FSCTL_READ_USN_JOURNAL 控制程式代碼。
若要擷取磁片區的控制碼,請使用下列格式的lpFileName參數來呼叫CreateFile:
\\.\X:
在上述字串中, X 是識別磁片區出現所在磁片磁碟機的字母。 磁片區必須是 NTFS。
在Windows 8和Windows Server 2012中,下列技術支援此程式碼。
技術 | 支援 |
---|---|
伺服器訊息區 (SMB) 3.0 通訊協定 | No |
SMB 3.0 透明容錯移轉 (TFO) | No |
具有向外延展檔案共用的 SMB 3.0 (SO) | No |
叢集共用磁片區檔案系統 (CsvFS) | Yes |
規格需求
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
標頭 | winioctl.h (包含 Windows.h) |