OB_PRE_OPERATION_INFORMATION 構造体 (wdm.h)

OB_PRE_OPERATION_INFORMATION構造体は、ObjectPreCallback ルーチンに対するプロセスまたはスレッド ハンドル操作に関する情報を提供します。

構文

typedef struct _OB_PRE_OPERATION_INFORMATION {
  OB_OPERATION                 Operation;
  union {
    ULONG Flags;
    struct {
      ULONG KernelHandle : 1;
      ULONG Reserved : 31;
    };
  };
  PVOID                        Object;
  POBJECT_TYPE                 ObjectType;
  PVOID                        CallContext;
  POB_PRE_OPERATION_PARAMETERS Parameters;
} OB_PRE_OPERATION_INFORMATION, *POB_PRE_OPERATION_INFORMATION;

メンバー

Operation

ハンドル操作の種類。 このメンバーは、次のいずれかの値になります。

OB_OPERATION_HANDLE_CREATE

プロセスまたはスレッドへの新しいハンドルが開きます。 作成固有の情報には Parameters-CreateHandleInformation> を使用します。

OB_OPERATION_HANDLE_DUPLICATE

プロセスまたはスレッド ハンドルが複製されます。 重複する特定の情報には Parameters-DuplicateHandleInformation> を使用します。

Flags

予約済み。 代わりに KernelHandle メンバーを使用してください。

KernelHandle

ハンドルがカーネル ハンドルであるかどうかを示すビット。 このメンバーが TRUE の場合、ハンドルはカーネル ハンドルです。 それ以外の場合、このハンドルはカーネル ハンドルではありません。

Reserved

システムで使用するために予約されています。

Object

ハンドル操作のターゲットであるプロセスまたはスレッド オブジェクトへのポインター。

ObjectType

オブジェクトのオブジェクト型へのポインター。 このメンバーは、プロセスの 場合は PsProcessType 、スレッドの 場合は PsThreadType です。

CallContext

操作のドライバー固有のコンテキスト情報へのポインター。 既定では、フィルター マネージャーはこのメンバーを NULL に設定しますが、 ObjectPreCallback ルーチンはドライバー固有の方法で CallContext メンバーをリセットできます。 フィルター マネージャーは、この値を一致する ObjectPostCallback ルーチンに渡します。

Parameters

操作固有の情報を含む OB_PRE_OPERATION_PARAMETERS 共用体へのポインター。 Operation メンバーは、共用体の有効なメンバーを決定します。

要件

要件
サポートされている最小のクライアント Windows Server 2008 以降のバージョンの Windows オペレーティング システムで使用できます。
Header wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む)

こちらもご覧ください

OB_PRE_OPERATION_PARAMETERS

ObjectPostCallback

ObjectPreCallback