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を返します。 その他の戻り値は次のとおりです。
リターン コード | 説明 |
---|---|
|
指定された DeviceProperty 値が無効です。 |
メソッドは、他の NTSTATUS 値を返す場合があります。
ドライバーが無効なオブジェクト ハンドルを提供すると、バグ チェックが発生します。
注釈
WdfFdoInitAllocAndQueryPropertyEx メソッドは、要求されたデバイス インターフェイス プロパティを保持するために必要なメモリの量を決定します。 データを保持するのに十分なメモリを割り当て、割り当てられたメモリを記述するフレームワーク メモリ オブジェクトにハンドルを返します。 データにアクセスするために、ドライバーは WdfMemoryGetBuffer を呼び出すことができます。
ドライバーは、WdfDeviceCreate を呼び出す前にのみ、WdfFdoInitAllocAndQueryPropertyEx を呼び出すことができます。 WdfDeviceCreate の呼び出しの詳細については、「フレームワーク デバイス オブジェクトの作成」を参照してください。
WdfDeviceCreate を呼び出した後、ドライバーは WdfDeviceAllocAndQueryPropertyEx を呼び出すことによってデバイス プロパティ情報を取得できます。
関連するメソッドの詳細については、「 統合デバイス プロパティ モデルへのアクセス」を参照してください。
要件
要件 | 値 |
---|---|
対象プラットフォーム | ユニバーサル |
最小 KMDF バージョン | 1.13 |
最小 UMDF バージョン | 2.0 |
Header | wdffdo.h (Wdf.h を含む) |
Library | Wdf01000.sys (KMDF);WUDFx02000.dll (UMDF) |
IRQL | PASSIVE_LEVEL |