REPARSE_DATA_BUFFER_EX 结构 (ntifs.h)

REPARSE_DATA_BUFFER_EX 结构包含重分析点的数据。

语法

typedef struct _REPARSE_DATA_BUFFER_EX {
  ULONG     Flags;
  ULONG     ExistingReparseTag;
  GUID      ExistingReparseGuid;
  ULONGLONG Reserved;
  union {
    REPARSE_DATA_BUFFER      ReparseDataBuffer;
    REPARSE_GUID_DATA_BUFFER ReparseGuidDataBuffer;
  } DUMMYUNIONNAME;
} REPARSE_DATA_BUFFER_EX, *PREPARSE_DATA_BUFFER_EX;

成员

Flags

可以是以下值:

标志值 含义
REPARSE_DATA_EX_FLAG_GIVEN_TAG_OR_NONE 如果文件没有标记,或者文件上的标记与 ExistingReparseTag 中的标记相同,则强制FSCTL_SET_REPARSE_POINT_EX设置重新分析标记。 注意:如果 ExistingReparseTag 不是 Microsoft 标记,则如果文件已有 ExistingReparseTag,则 ExistingReparseGuid 应匹配

ExistingReparseTag

如果调用方也想要替换重新分析标记,请重新分析文件上的点标记(如果有)。

  • 若要设置重新分析数据以及可能不同的重新分析标记, ExistingReparseTag 应为文件的当前重新分析标记。
  • 若要更新重新分析数据,同时保持相同的重新分析标记, ExistingReparseTag 应为现有的重新分析标记。
  • 若要在尚未具有重新分析标记的文件上设置重新分析标记以及重新分析数据,应将 ExistingReparseTag 设置为零。

ExistingReparseGuid

对于非 Microsoft 重分析标记,当调用方想要替换重分析标记和/或 GUID 以及数据时,这是文件上现有的重新分析 GUID(如果有)。 如果 ExistingReparseTag 为零,则该文件不应具有任何重新分析标记,因此 将忽略 ExistingReparseGuid 。 对于非 Microsoft 标记,如果 ExistingReparseTag 为非零,则 ExistingReparseGuid 应与文件中的 GUID 匹配。

Reserved

保留。 请勿使用。

DUMMYUNIONNAME

DUMMYUNIONNAME.ReparseDataBuffer

包含 Microsoft 定义的重分析点的数据 的REPARSE_DATA_BUFFER 结构。

DUMMYUNIONNAME.ReparseGuidDataBuffer

包含重分析点数据的 REPARSE_GUID_DATA_BUFFER 结构。 第三方重新分析点必须使用此结构。

注解

REPARSE_DATA_BUFFER_EX结构用于存储重分析点的数据。 通过 FSCTL_SET_REPARSE_POINT_EX IOCTL 在文件或目录上设置重分析点时 ,请使用 REPARSE_DATA_BUFFER_EX

要求

要求
Header ntifs.h

另请参阅

FSCTL_SET_REPARSE_POINT_EX

REPARSE_DATA_BUFFER

REPARSE_GUID_DATA_BUFFER