次の方法で共有


WdfDeviceWdmGetAttachedDevice 関数 (wdfdevice.h)

[KMDF にのみ適用]

WdfDeviceWdmGetAttachedDevice メソッドは、デバイス スタック内の次の下位 WDM デバイス オブジェクトを返します。

構文

PDEVICE_OBJECT WdfDeviceWdmGetAttachedDevice(
  [in] WDFDEVICE Device
);

パラメーター

[in] Device

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

戻り値

WdfDeviceWdmGetAttachedDevice WDM DEVICE_OBJECT 構造体へのポインターを返します。 指定したオブジェクト ハンドルが物理デバイス オブジェクト (PDO) を表す場合、メソッドは null 返します。

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

注釈

WdfDeviceWdmGetAttachedDevice メソッドが返すポインターは、フレームワーク デバイス オブジェクトが削除されるまで有効です。 ドライバーがフレームワーク デバイス オブジェクト EvtCleanupCallback 関数を提供する場合、ポインターはコールバック関数が返されるまで有効です。

例示

次のコード例では、デバイスの PDO、FDO、および次の下位デバイスを表す WDM デバイス オブジェクトへのポインターを含むトレース メッセージを作成します。

TraceEvents(
            TRACE_LEVEL_INFORMATION,
            DBG_PNP,
            "PDO(0x%p) FDO(0x%p), Lower(0x%p)\n",
            WdfDeviceWdmGetPhysicalDevice(device),
            WdfDeviceWdmGetDeviceObject(device),
            WdfDeviceWdmGetAttachedDevice(device)
            );

必要条件

要件 価値
ターゲット プラットフォーム 普遍
最小 KMDF バージョン 1.0
ヘッダー wdfdevice.h (Wdf.h を含む)
図書館 Wdf01000.sys (フレームワーク ライブラリのバージョン管理を参照)。
IRQL <= DISPATCH_LEVEL
DDI コンプライアンス規則 する DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

こちらもご覧ください

WdfDeviceWdmGetDeviceObject

WdfDeviceWdmGetPhysicalDevice