Поделиться через


структура 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 Принудительно FSCTL_SET_REPARSE_POINT_EX задать тег повторной аналитики, если в файле нет тега или тег в файле совпадает с тегом ExistingReparseTag. ПРИМЕЧАНИЕ. Если ExistingReparseTag не является тегом Майкрософт, то ExistingReparseGuid должен совпадать, если файл уже содержит ExistingReparseTag.

ExistingReparseTag

Если вызывающий объект хочет также заменить тег reparse point в файле , если он есть, необходимо также заменить его.

  • Чтобы задать данные повторного анализа вместе с тегом reparse, который может отличаться, ExistingReparseTag должен быть текущим тегом повторного анализа файла.
  • Чтобы обновить данные повторного анализа с сохранением того же тега повторного анализа, ExistingReparseTag должен быть существующим тегом повторного анализа.
  • Чтобы задать тег повторного анализа вместе с данными повторного анализа для файла, который еще не имеет тега повторного анализа, необходимо задать значение ExistingReparseTag равным нулю.

ExistingReparseGuid

Для тегов повторного анализа, отличных от Майкрософт, это существующий GUID повторного анализа в файле, если он имеется, когда вызывающий объект хочет заменить тег повторного анализа и (или) GUID вместе с данными. Если значение ExistingReparseTag равно нулю, ожидается, что файл не будет содержать теги повторного определения, поэтому ExistingReparseGuid игнорируется. Для тегов, отличных от Майкрософт, ExistingReparseGuid должен соответствовать GUID в файле, если ExistingReparseTag не равен нулю.

Reserved

Зарезервировано. Не используется.

DUMMYUNIONNAME

DUMMYUNIONNAME.ReparseDataBuffer

Структура REPARSE_DATA_BUFFER , содержащая данные для точки повторного анализа, определенной Корпорацией Майкрософт.

DUMMYUNIONNAME.ReparseGuidDataBuffer

Структура REPARSE_GUID_DATA_BUFFER , содержащая данные для точки повторного анализа. Сторонние точки повторного анализа должны использовать эту структуру.

Комментарии

Структура REPARSE_DATA_BUFFER_EX используется для хранения данных для точки повторного анализа. Используйте REPARSE_DATA_BUFFER_EX при задании точки повторного просмотра для файла или каталога с помощью FSCTL_SET_REPARSE_POINT_EX IOCTL.

Требования

Требование Значение
Заголовок ntifs.h

См. также раздел

FSCTL_SET_REPARSE_POINT_EX

REPARSE_DATA_BUFFER

REPARSE_GUID_DATA_BUFFER