DELETE_USN_JOURNAL_DATA 结构 (winioctl.h)
包含有关使用 FSCTL_DELETE_USN_JOURNAL 控制代码删除更新序列号 (USN) 变更日志的信息。
语法
typedef struct {
DWORDLONG UsnJournalID;
DWORD DeleteFlags;
} DELETE_USN_JOURNAL_DATA, *PDELETE_USN_JOURNAL_DATA;
成员
UsnJournalID
要删除的更改日志的标识符。
如果日志处于活动状态,并且通过在 DeleteFlags 成员中设置USN_DELETE_FLAG_DELETE标志请求删除,则此标识符必须指定当前卷的更改日志。 使用 FSCTL_QUERY_USN_JOURNAL 检索此更改日志的标识符。 在这种情况下,如果标识符不是当前卷的更改日志, 则FSCTL_DELETE_USN_JOURNAL 失败。
如果在 DeleteFlags 中仅设置USN_DELETE_FLAG_NOTIFY标志来请求通知而不是删除,则忽略 UsnJournalID 。
DeleteFlags
指示是执行删除或有关删除的通知,还是执行这两者。 DeleteFlags 成员必须包含以下一个或两个值。
值 | 含义 |
---|---|
|
如果设置了此标志且未设置USN_DELETE_FLAG_NOTIFY标志, 则FSCTL_DELETE_USN_JOURNAL 操作将启动日志删除过程并立即返回。 如有必要,在系统重启后,日志删除过程会继续。
如果设置了此标志并同时设置了USN_DELETE_FLAG_NOTIFY标志,则会同时删除和通知。 如果设置了此标志并且日志处于活动状态,则必须在 UsnJournalID 中为当前卷提供更改日志的标识符,否则操作将失败。 如果日志未处于活动状态,则忽略 UsnJournalID 并删除该日志。 |
|
如果设置了此标志,则调用将设置有关删除完成时间的通知。 日记删除过程完成后,将完成日记删除请求。 如果已设置此标志并且未设置USN_DELETE_FLAG_DELETE标志,则调用将设置可能已在进行的删除通知。 例如,应用程序启动时,它可能会使用此标志来确定是否正在进行删除。
如果设置了此标志并同时设置了USN_DELETE_FLAG_DELETE标志,则会同时删除和通知。 通知使用 I/O 完成端口或其他异步事件通知机制执行。 |
注解
有关详细信息,请参阅创建、修改和删除更改日记。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
标头 | winioctl.h (包括 Windows.h) |