从更改日志获取最新的 USN 数据

Get latest USN data from Change Journal

本文关键字:USN 数据 最新 获取 日志      更新时间:2023-10-16

MSDN C++代码仅显示如何从缓冲区开始获取更改日志记录。 用于阅读更改日志的 MSDN 代码。

我的查询是如何从更改日志中获取最新的 USN 记录。我已根据要求增加了缓冲区大小。#define BUF_LEN 789824此外,我无法将缓冲区设置为最大大小,因为它违反了 DWORD 最大大小限制。

该命令fsutils usn readjournal c:需要花费大量时间来显示输出。那么,如何使用 c++ 仅从日志中获取最新记录?

添加大型缓冲区会导致大量内存分配,进而导致性能下降。解决此问题的方法是保留#define BUF_LEN 4096(较小的值(并将迭代值增加到更改日志的最大大小。

for (I = 0; I <= 2415919104; I++)

在这里,大值只是fsutil usn queryjournal C:(或任何NTFS日志(返回的输出。Maximum Size : 0x0000000090000000.(将十六进制值转换为十进制值(

这对我有用。希望这对某人有所帮助。