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_GUID (323eb6a8-affd-4d95-8230-863bce09d37a) 。 OPEN_REPARSE_LIST指向一个OPEN_REPARSE_LIST_ENTRY结构列表,这些结构指定了应直接打开且不返回STATUS_REPARSE的标记和 GUID。 如果找到匹配项,则相应的 OPEN_REPARSE_LIST_ENTRY 结构将设置 OPEN_REPARSE_POINT_TAG_ENCOUNTERED 标志,以指示打开的对象与给定的条件匹配。 如果找到不是最终路径组件的目录的匹配项并返回 STATUS_REPARSE ,则将在 RemainingLength 字段中设置未处理的路径长度。

要求

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