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_EXISTSおよびOPEN_REPARSE_POINT_REPARSE_IF_DIRECTORY_FINAL_COMPONENTフラグを同時に使用すると、システムがディレクトリの再解析ポイントで再解析することを示します。
 

ReparseGuid

STATUS_REPARSEを返さずに直接開く必要がある再解析タグの GUID。

Size

この構造のサイズ。

RemainingLength

再解析ポイントが検出されたときの未処理のパスの長さ。

注釈

この構造により、呼び出し元は、再解析ポイントのすべてのクラスの再解析動作を抑制することなく、特定の再解析ポイントを開くことができます。 OPEN_REPARSE_LISTは、ECP_TYPE_OPEN_REPARSE_GUID (323eb6a8-affd-4d95-8230-863bce09d37a) を持つ ECP で使用される構造体です。 OPEN_REPARSE_LISTは、タグと、STATUS_REPARSEを返さずに直接開く必要がある GUID を指定するOPEN_REPARSE_LIST_ENTRY構造体の一覧を指します。 一致が見つかった場合、対応する OPEN_REPARSE_LIST_ENTRY 構造体には 、開 かれたオブジェクトが指定された条件と一致したことを示すOPEN_REPARSE_POINT_TAG_ENCOUNTERED フラグが設定されます。 最終パス コンポーネントではないディレクトリに一致が見つか り、STATUS_REPARSE が返された場合、未処理のパスの長さは RemainingLength フィールドに設定されます。

要件

要件
サポートされている最小のクライアント Windows 10 Version 1607
サポートされている最小のサーバー Windows Server 2016
Header ntifs.h