次の方法で共有


WdfFdoInitAllocAndQueryPropertyEx 関数 (wdffdo.h)

[KMDF と UMDF に適用]

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

構文

NTSTATUS WdfFdoInitAllocAndQueryPropertyEx(
  [in]           PWDFDEVICE_INIT           DeviceInit,
  [in]           PWDF_DEVICE_PROPERTY_DATA DeviceProperty,
  [in]           POOL_TYPE                 PoolType,
  [in, optional] PWDF_OBJECT_ATTRIBUTES    PropertyMemoryAttributes,
  [out]          WDFMEMORY                 *PropertyMemory,
  [out]          PDEVPROPTYPE              Type
);

パラメーター

[in] DeviceInit

ドライバーが EvtDriverDeviceAdd コールバック関数から取得した WDFDEVICE_INIT 構造体 ポインター。

[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 に格納されているプロパティ データのプロパティ型の値含まれます。

戻り値

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

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

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

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

注釈

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

ドライバーは、WdfDeviceCreate を呼び出す前にのみ、WdfFdoInitAllocAndQueryPropertyEx呼び出すことができます。 WdfDeviceCreate 呼び出す方法の詳細については、「フレームワーク デバイス オブジェクトの作成」を参照してください。

WdfDeviceCreate 呼び出した後、ドライバーは、WdfDeviceAllocAndQueryPropertyExを呼び出すことによって、デバイスのプロパティ情報を取得できます。

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

必要条件

要件 価値
ターゲット プラットフォーム 普遍
最小 KMDF バージョン 1.13
UMDF の最小バージョン する 2.0
ヘッダー wdffdo.h (Wdf.h を含む)
図書館 Wdf01000.sys (KMDF);WUDFx02000.dll (UMDF)
IRQL PASSIVE_LEVEL

こちらもご覧ください

WdfFdoInitAllocAndQueryProperty