FSCTL_WRITE_USN_CLOSE_RECORD IOCTL (winioctl.h)
在輸入檔的更新序號 (USN) 變更記錄資料流中產生記錄。 此記錄會有 USN_REASON_CLOSE 旗標。
若要執行這項作業,請使用下列參數呼叫 DeviceIoControl 函式。
C++ |
---|
BOOL WINAPI DeviceIoControl( (HANDLE) hDevice, // handle to volume FSCTL_WRITE_USN_CLOSE_RECORD, // dwIoControlCodeNULL, // lpInBuffer0, // nInBufferSize(LPVOID) lpOutBuffer, // output buffer (DWORD) nOutBufferSize, // size of output buffer (LPDWORD) lpBytesReturned, // number of bytes returned (LPOVERLAPPED) lpOverlapped ); // OVERLAPPED structure |
言論
如需此作業上重疊 I/O 的影響,請參閱 DeviceIoControl的一節。
您可以使用 FSCTL_WRITE_USN_CLOSE_RECORD,強制關閉記錄到輸入句柄的變更日誌中。 關閉記錄也會包含此檔案的任何目前USN原因。 輸出緩衝區會傳回與此作業相關聯的 USN 值。
如需詳細資訊,請參閱 建立、修改和刪除變更日誌。
若要擷取磁碟區的句柄,請使用 下列格式的 lpFileName 參數呼叫 createFile:
\\.\X:
在上述字串中,X 是識別磁碟區出現磁碟驅動器的字母。 磁碟區必須是NTFS 3.0或更新版本。 若要取得磁碟區的NTFS版本,請使用系統管理員訪問許可權開啟命令提示字元,然後執行下列命令:
fsutil fsinfo ntfsinfo X:
其中 X 是磁碟區的驅動器號。
在 Windows 8 和 Windows Server 2012 中,下列技術支援此程序代碼。
科技 | 支援 |
---|---|
伺服器消息塊 (SMB) 3.0 通訊協定 | 不 |
SMB 3.0 透明故障轉移 (TFO) | 不 |
具有向外延展檔案共用的SMB 3.0(SO) | 不 |
叢集共用磁碟區檔案系統 (CsvFS) | 是的 |
交易作業
如果使用交易鎖定的句柄呼叫 FSCTL_WRITE_USN_CLOSE_RECORD,則一律會失敗。要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
支援的最低伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
標頭 | winioctl.h (包括 Windows.h) |