次の方法で共有


NETWORK_OPEN_ECP_CONTEXT構造体 (ntifs.h)

NETWORK_OPEN_ECP_CONTEXT 構造体は、ファイルのネットワーク追加作成パラメーター (ECP) コンテキストを解釈するために使用されます。

構文

typedef struct _NETWORK_OPEN_ECP_CONTEXT {
  USHORT Size;
  USHORT Reserved;
  struct {
    struct {
      NETWORK_OPEN_LOCATION_QUALIFIER  Location;
      NETWORK_OPEN_INTEGRITY_QUALIFIER Integrity;
      NETWORK_OPEN_IN_FLAGS            Flags;
    } in;
    struct {
      NETWORK_OPEN_LOCATION_QUALIFIER  Location;
      NETWORK_OPEN_INTEGRITY_QUALIFIER Integrity;
      NETWORK_OPEN_OUT_FLAGS           Flags;
    } out;
  } DUMMYSTRUCTNAME;
} NETWORK_OPEN_ECP_CONTEXT, *PNETWORK_OPEN_ECP_CONTEXT;

メンバーズ

Size

この構造体のサイズ (バイト単位)。

Reserved

引っ込み思案。 0 に設定する必要があります。

DUMMYSTRUCTNAME

ファイルを開く (作成前に) 適用し、ファイルを開いた後 (作成後) に適用する制限を含む構造体。

DUMMYSTRUCTNAME.in

ファイルを開く際の事前作成の制限を含む構造体。

DUMMYSTRUCTNAME.in.Location

ファイルにアタッチする場所の制限を指定する NETWORK_OPEN_LOCATION_QUALIFIER型指定された値。

DUMMYSTRUCTNAME.in.Integrity

ファイルにアタッチする整合性の制限を指定する NETWORK_OPEN_INTEGRITY_QUALIFIER型指定された値。

DUMMYSTRUCTNAME.in.Flags

Windows 7 以降でサポートされています。 ファイルの属性を指定する値。 このメンバーは、次のいずれかのフラグのビットごとの OR です。

価値 意味
NETWORK_OPEN_ECP_IN_FLAG_DISABLE_HANDLE_COLLAPSING (0x1) SMB リダイレクターに対して、受信したオープン要求をピギーバックして、同じファイルに対する既存の開いているハンドルに折りたたんではいないことを示します。
NETWORK_OPEN_ECP_IN_FLAG_DISABLE_HANDLE_DURABILITY (0x2) SMB2+ リダイレクターがこの開いているハンドルの持続性を無効にします。 永続的な操作用にファイルを開く方法の詳細については、「アプリケーション要求: Durable Operation用に開かれたファイルの作成」を参照してください。
NETWORK_OPEN_ECP_IN_FLAG_DISABLE_OPLOCKS (0x4) SMB リダイレクターに対して、受信オープン要求の oplock を許可しないことを示します。 このフラグは、Windows 8 以降で使用できます。
NETWORK_OPEN_ECP_IN_FLAG_FORCE_BUFFERED_SYNCHRONOUS_IO_HACK (0x80000000) 内部使用のために予約されており、アプリケーションで使用することはできません。 このフラグは、ハンドルが非同期 I/O 用に開かれた場合でも、リダイレクターに同期 I/O を強制的に使用します。

DUMMYSTRUCTNAME.out

ファイルを開いた後に適用する作成後の制限を含む構造体。

DUMMYSTRUCTNAME.out.Location

ファイルにアタッチする場所の制限を指定する NETWORK_OPEN_LOCATION_QUALIFIER型指定された値。

DUMMYSTRUCTNAME.out.Integrity

ファイルにアタッチする整合性の制限を指定する NETWORK_OPEN_INTEGRITY_QUALIFIER型指定された値。

DUMMYSTRUCTNAME.out.Flags

Windows 7 以降でサポートされています。 ファイルの属性を指定する値。 このメンバーは、次のいずれかのフラグのビットごとの OR です。

価値 意味
NETWORK_OPEN_ECP_IN_FLAG_DISABLE_HANDLE_COLLAPSING (0x1) SMB リダイレクターに対して、受信したオープン要求をピギーバックして、同じファイルに対する既存の開いているハンドルに折りたたんではいないことを示します。
NETWORK_OPEN_ECP_IN_FLAG_DISABLE_HANDLE_DURABILITY (0x2) SMB2+ リダイレクターがこの開いているハンドルの持続性を無効にします。 永続的な操作用にファイルを開く方法の詳細については、「アプリケーション要求: Durable Operation用に開かれたファイルの作成」を参照してください。
NETWORK_OPEN_ECP_IN_FLAG_FORCE_BUFFERED_SYNCHRONOUS_IO_HACK (0x80000000) 内部使用のために予約されており、アプリケーションで使用することはできません。 このフラグは、ハンドルが非同期 I/O 用に開かれた場合でも、リダイレクターに同期 I/O を強制的に使用します。

備考

ファイルの作成時に ECP を使用して追加情報をファイルに関連付ける方法については、「IRP_MJ_CREATE操作で追加の作成パラメーターを使用する 」を参照してください。

フィルター ドライバーは、NETWORK_OPEN_ECP_CONTEXT構造体を読み取り専用と見なす必要があります。これを使用して、ファイル上のネットワーク ECP コンテキストに関する情報のみを取得します。 詳細については、「System-Defined ECP」を参照してください。

ファイル システムが NETWORK_OPEN_ECP_CONTEXT コンテキスト構造を確認したことを呼び出し元が確認する必要がある場合、呼び出し元は、操作の完了後に、FltIsEcpAcknowledged を呼び出すか、または FsRtlIsEcpAcknowledged ルーチンを ECP で する必要があります。

Windows 7 以降のバージョンの Windows で実行され、Windows Vista 上に存在するファイルのネットワーク ECP コンテキストを解釈する必要があるドライバーは、代わりに NETWORK_OPEN_ECP_CONTEXT_V0 構造を使用する必要があります。

Windows Vista 以降のバージョンの Windows で実行されるドライバーは、NETWORK_OPEN_ECP_CONTEXT 構造を使用して、ファイル上のネットワーク ECP コンテキストを解釈します。 ただし、DUMMYSTRUCTNAME.in.Flags および DUMMYSTRUCTNAME.out.Flags メンバー は、Windows 7 以降でのみサポートされます。

必要条件

要件 価値
サポートされる最小クライアント この構造は、Windows Vista 以降で使用できます。
ヘッダー ntifs.h (Ntifs.h を含む)

関連項目

FltIsEcpAcknowledged の

FsRtlIsEcpAcknowledged

NETWORK_OPEN_ECP_CONTEXT_V0

NETWORK_OPEN_LOCATION_QUALIFIER

NETWORK_OPEN_INTEGRITY_QUALIFIER