次の方法で共有


KSOBJECT_CREATE_ITEM構造体 (ks.h)

KSOBJECT_CREATE_ITEM構造体は、作成要求に渡される文字列を検索するために使用されます。

構文

typedef struct {
  PDRIVER_DISPATCH     Create;
  PVOID                Context;
  UNICODE_STRING       ObjectClass;
  PSECURITY_DESCRIPTOR SecurityDescriptor;
  ULONG                Flags;
} KSOBJECT_CREATE_ITEM, *PKSOBJECT_CREATE_ITEM;

メンバー

Create

この特定の基本オブジェクト クラスの create ディスパッチ関数が含まれます。 この関数型のシグネチャについては、「 DRIVER_OBJECT 」を参照してください。

Context

オブジェクト型固有のコンテキスト情報を格納するために使用できるバッファーを指します。 追加情報については、以下の「解説」セクションを参照してください。

ObjectClass

オブジェクト クラスを識別する Unicode 文字列を指します。 これは、このデバイスでサポートされているオブジェクトの特定のクラスの PnP に登録するために使用された文字列です。

SecurityDescriptor

この種類のオブジェクトの SECURITY_DESCRIPTOR へのポインターを格納します。それ以外の場合は NULL です。 セキュリティを使用する場合は、オブジェクトの種類が使用されなくなったときに解放する必要があります。 これはプール メモリを使用する必要があり、置き換えられる可能性があるため、共有できません。 これが変更されると、 Flags 要素が更新されます。 省略可能。

Flags

要求の種類を指定します。 フラグには、次の表に示す値を指定できます。

フラグ 説明
KSCREATE_ITEM_SECURITYCHANGED このオブジェクト型のセキュリティ記述子が変更され、永続化する必要があることを示します。
KSCREATE_ITEM_WILDCARD この作成アイテムが、他の作成アイテムと一致しない作成要求に使用される野生のカードを表していることを示します。 作成項目のリスト内の野生のカードエントリの順序は関係ありません。 作成アイテムの一覧で有効なワイルド カード エントリは 1 つだけです。
KSCREATE_ITEM_NOPARAMETERS この作成項目ではパラメーターの渡しが許可されず、見つかった場合は失敗することを示します。 通常、create パラメーターは作成ハンドラーに渡されます。 これは、野生のカード フラグでは使用できません。

注釈

オブジェクトが作成される前に、KSOBJECT_CREATE_ITEM構造体へのポインターが Irp-Tail.Overlay>DriverContext メンバーに配置されます。 このポインターには、KSCREATE_ITEM_IRP_STORAGE マクロを使用してアクセスできます。 このマクロと関連するマクロは ks.h に含まれています。

ミニドライバーは、 コンテキスト フィールドを調べるために新しいオブジェクトを作成するときに、このポインターを取得する場合があります。

要件

要件
Header ks.h (Ks.h を含む)

こちらもご覧ください

KsAllocateDeviceHeader

KsAllocateObjectHeader

KsFilterFactoryAddCreateItem