检索指定文件或目录的更新序列号(USN)更改日志信息。
若要执行此操作,请使用以下参数调用 DeviceIoControl 函数。
| C++ |
|---|
BOOL
WINAPI
DeviceIoControl( (HANDLE) hDevice, // handle to device
(DWORD) FSCTL_READ_FILE_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
|
言论
如果调用成功,则返回的 USN_RECORD_V2 或 USN_RECORD_V3 结构的成员除了以下成员有效:TimeStamp、Reason和 SourceInfo。 Usn 成员表示写入此文件或目录日记的最后一个 USN。
有关详细信息,请参阅 创建、修改和删除更改日记。
若要检索卷的句柄,请调用 CreateFile,lpFileName 参数设置为以下格式的字符串:
\\.\X:
在前面的字符串中,X 是标识卷所在的驱动器的字母。 卷必须是 ReFS 或 NTFS 3.0 或更高版本。 若要获取卷的 NTFS 版本,请使用管理员访问权限打开命令提示符并执行以下命令:
FSUtil.exe FSInfo NTFSInfo X:
其中,X 是卷的驱动器号。
在 Windows 8 和 Windows Server 2012 中,以下技术支持此代码。
| 科技 | 支持 |
|---|---|
| 服务器消息块 (SMB) 3.0 协议 | 不 |
| SMB 3.0 透明故障转移 (TFO) | 不 |
| 具有横向扩展文件共享的 SMB 3.0 (SO) | 不 |
| 群集共享卷文件系统 (CsvFS) | 是的 |
要求
| 要求 | 价值 |
|---|---|
| 最低支持的客户端 | Windows XP [仅限桌面应用] |
| 支持的最低服务器 | Windows Server 2003 [仅限桌面应用] |
| 标头 | winioctl.h (包括 Windows.h) |