OPEN_REPARSE_LIST_ENTRY结构 (ntifs.h)

此结构支持调用方打开特定的重新分析点,而不会抑制所有重新分析点类的重新分析行为。

语法

typedef struct _OPEN_REPARSE_LIST_ENTRY {
  LIST_ENTRY OpenReparseListEntry;
  ULONG      ReparseTag;
  ULONG      Flags;
  GUID       ReparseGuid;
  USHORT     Size;
  USHORT     RemainingLength;
} OPEN_REPARSE_LIST_ENTRY, *POPEN_REPARSE_LIST_ENTRY;

成员

OpenReparseListEntry

打开的重新分析列表中的条目。

ReparseTag

应直接打开的重新分析标记,而不返回 STATUS_REPARSE

Flags

当在目录上遇到重新分析点时控制行为的标志(其重新分析标记由 FsRtlIsNonEmptyDirectoryReparsePointAllowed识别)。

价值 意义
OPEN_REPARSE_POINT_TAG_ENCOUNTERED
0x00000001
指示打开的对象符合给定条件。
OPEN_REPARSE_POINT_REPARSE_IF_CHILD_EXISTS
0x00000002
如果重新分析点位于不是最终路径组件的目录上,并且存在下一个路径组件,则对目录进行重新分析。
OPEN_REPARSE_POINT_REPARSE_IF_CHILD_NOT_EXISTS
0x00000004
如果重新分析点位于不是最终路径组件的目录上,并且下一个路径组件不存在,则对目录进行重新分析。
OPEN_REPARSE_POINT_REPARSE_IF_DIRECTORY_FINAL_COMPONENT
0x00000008
如果重新分析点位于作为最终路径组件的目录上,并且尚未指定 FILE_OPEN_REPARSE_POINT,则对目录进行重新分析。
OPEN_REPARSE_POINT_VERSION_EX
0x80000000
指示此结构的字段有效。
 
注意OPEN_REPARSE_POINT_REPARSE_IF_CHILD_EXISTSOPEN_REPARSE_POINT_REPARSE_IF_CHILD_NOT_EXISTSOPEN_REPARSE_POINT_REPARSE_IF_DIRECTORY_FINAL_COMPONENT 标志同时使用时,它表示系统要在任何目录重新分析点上重新分析。
 

ReparseGuid

应直接打开的重新分析标记的 GUID,而不返回 STATUS_REPARSE

Size

此结构的大小。

RemainingLength

遇到重新分析点时未处理的路径长度。

言论

此结构允许调用方打开特定的重新分析点,而不会抑制所有重新分析点类的重新分析行为。 OPEN_REPARSE_LIST 是 ECP 中用于 ECP_TYPE_OPEN_REPARSE_GUID323eb6a8-affd-4d95-8230-863bce09d37a)的结构。 OPEN_REPARSE_LIST 指向指定标记和可能直接打开的 GUID 的 OPEN_REPARSE_LIST_ENTRY 结构列表,而无需返回 STATUS_REPARSE。 如果找到匹配项,相应的 OPEN_REPARSE_LIST_ENTRY 结构将设置 OPEN_REPARSE_POINT_TAG_ENCOUNTERED 标志,以指示打开的对象符合给定条件。 如果为不是最终路径组件的目录找到匹配项,并且返回 STATUS_REPARSE,则未处理的路径长度将在 RemainingLength 字段中设置。

要求

要求 价值
最低支持的客户端 Windows 10 版本 1607
支持的最低服务器 Windows Server 2016
标头 ntifs.h