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

一个 REPARSE_DATA_BUFFER 结构,其中包含Microsoft定义的重新分析点的数据。

DUMMYUNIONNAME.ReparseGuidDataBuffer

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

言论

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

要求

要求 价值
标头 ntifs.h

另请参阅

FSCTL_SET_REPARSE_POINT_EX

REPARSE_DATA_BUFFER

REPARSE_GUID_DATA_BUFFER