次の方法で共有


WdfDeviceAllocAndQueryPropertyEx 関数 (wdfdevice.h)

[KMDF と UMDF に適用]

WdfDeviceAllocAndQueryPropertyEx メソッドはバッファーを割り当て、指定されたデバイス プロパティを取得します。

構文

NTSTATUS WdfDeviceAllocAndQueryPropertyEx(
  [in]           WDFDEVICE                 Device,
  [in]           PWDF_DEVICE_PROPERTY_DATA DeviceProperty,
  [in]           POOL_TYPE                 PoolType,
  [in, optional] PWDF_OBJECT_ATTRIBUTES    PropertyMemoryAttributes,
  [out]          WDFMEMORY                 *PropertyMemory,
  [out]          PDEVPROPTYPE              Type
);

パラメーター

[in] Device

フレームワーク デバイス オブジェクトへのハンドル。

[in] DeviceProperty

取得するデバイス プロパティを識別する WDF_DEVICE_PROPERTY_DATA 構造体へのポインター。

[in] PoolType

割り当てる メモリの種類を指定するPOOL_TYPE型の列挙子。

[in, optional] PropertyMemoryAttributes

関数が割り当てるメモリ オブジェクトのオブジェクト属性を記述する呼び出し元によって割り当てられた WDF_OBJECT_ATTRIBUTES 構造体へのポインター。 このパラメーターは省略可能であり、WDF_NO_OBJECT_ATTRIBUTESできます。

[out] PropertyMemory

フレームワーク メモリ オブジェクトへのハンドルを受け取る WDFMEMORY 型の場所へのポインター。

[out] Type

DEVPROPTYPE 変数へのポインター。 メソッドが成功した場合、このパラメーターには PropertyMemory に格納されているプロパティ データのプロパティ型の値が含まれます。

戻り値

操作が成功した場合、 WdfDeviceAllocAndQueryPropertyEx は STATUS_SUCCESSを返します。 その他の戻り値は次のとおりです。

リターン コード 説明
STATUS_INVALID_PARAMETER
指定された DeviceProperty 値が無効です。
 

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

ドライバーが無効なオブジェクト ハンドルを提供すると、バグ チェックが発生します。

注釈

WdfDeviceAllocAndQueryPropertyEx を使用すると、統合プロパティ モデルを通じて公開されるプロパティを取得できますが、WdfDeviceAllocAndQueryProperty メソッドでは、統合プロパティ モデルのサブセットに対してのみクエリを実行できます。

WdfDeviceAllocAndQueryPropertyEx メソッドは、要求されたデバイス インターフェイス プロパティを保持するために必要なメモリの量を決定します。 データを保持するのに十分なメモリを割り当て、割り当てられたメモリを記述するフレームワーク メモリ オブジェクトにハンドルを返します。 データにアクセスするために、ドライバーは WdfMemoryGetBuffer を呼び出すことができます。

関連するメソッドの詳細については、「 統合デバイス プロパティ モデルへのアクセス」を参照してください。

要件

要件
対象プラットフォーム ユニバーサル
最小 KMDF バージョン 1.13
最小 UMDF バージョン 2.0
Header wdfdevice.h (Wdf.h を含む)
Library Wdf01000.sys (KMDF);WUDFx02000.dll (UMDF)
IRQL APC_LEVEL

こちらもご覧ください

WdfDeviceAllocAndQueryInterfaceProperty

WdfDeviceAllocAndQueryProperty