次の方法で共有


WdfCollectionCreate 関数 (wdfcollection.h)

[KMDF と UMDF に適用]

WdfCollectionCreate メソッドは、フレームワーク コレクション オブジェクトを作成します。

構文

NTSTATUS WdfCollectionCreate(
  [in, optional] PWDF_OBJECT_ATTRIBUTES CollectionAttributes,
  [out]          WDFCOLLECTION          *Collection
);

パラメーター

[in, optional] CollectionAttributes

新しいコレクション オブジェクトの属性を含む呼び出し元によって割り当てられた WDF_OBJECT_ATTRIBUTES 構造体へのポインター。 このパラメーターは省略可能であり、WDF_NO_OBJECT_ATTRIBUTESできます。

[out] Collection

新しいコレクション オブジェクトへのハンドルを受け取る場所へのポインター。

戻り値

操作が成功した場合、WdfCollectionCreate はSTATUS_SUCCESSを返します。 それ以外の場合、このメソッドは次のいずれかの値を返す可能性があります。

リターン コード 説明
STATUS_INVALID_PARAMETER
呼び出し元が無効なパラメーター値を指定しました。
STATUS_INSUFFICIENT_RESOURCES
コレクション オブジェクトを割り当てませんでした。
 

このメソッドは、他の NTSTATUS 値も返す場合があります。

注釈

WdfCollectionCreate を呼び出してフレームワーク コレクション オブジェクトを作成した後、ドライバーは WdfCollectionAdd を呼び出してコレクションにオブジェクトを追加できます。

既定では、新しいコレクション オブジェクトの親は 、WdfDriverCreate メソッドによって作成されたフレームワーク ドライバー オブジェクトです。 WDF_OBJECT_ATTRIBUTES構造体の ParentObject メンバーを使用して、別の親を指定できます。 フレームワークは、親オブジェクトを削除するときにコレクション オブジェクトを削除します。 ドライバーが既定の親を変更しない場合、ドライバーは、 オブジェクトの使用が完了したときにコレクション オブジェクトを削除する必要があります。それ以外の場合、オブジェクトは I/O マネージャーがドライバーをアンロードするまで残ります。

オブジェクト コレクションの詳細については、「 Framework オブジェクト コレクション」を参照してください。

WdfCollectionCreate を使用するコード例については、「WdfCollectionAdd」を参照してください。

要件

要件
対象プラットフォーム ユニバーサル
最小 KMDF バージョン 1.0
最小 UMDF バージョン 2.0
Header wdfcollection.h (Wdf.h を含む)
Library Wdf01000.sys (KMDF);WUDFx02000.dll (UMDF)
IRQL <= DISPATCH_LEVEL
DDI コンプライアンス規則 DriverCreate(kmdf)KmdfIrql(kmdf)KmdfIrql2(kmdf)、KmdfIrqlExplicit(kmdf)

こちらもご覧ください

WDF_OBJECT_ATTRIBUTES

WdfCollectionAdd

WdfCollectionRemove

WdfDriverCreate