次の方法で共有


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
Header wdfdevice.h (Wdf.h を含む)
Library Wdf01000.sys (「Framework ライブラリのバージョン管理」を参照)。
IRQL <= DISPATCH_LEVEL
DDI コンプライアンス規則 DriverCreate(kmdf)KmdfIrql(kmdf)KmdfIrql2(kmdf)、KmdfIrqlExplicit(kmdf)

こちらもご覧ください

WdfDeviceWdmGetDeviceObject

WdfDeviceWdmGetPhysicalDevice