WdfIoTargetWdmGetTargetPhysicalDevice 函式 (wdfiotarget.h)
[僅適用於 KMDF]
WdfIoTargetWdmGetTargetPhysicalDevice 方法會傳回指向 Windows 驅動程式模型指標, (WDM) 實體裝置物件, (PDO) ,代表遠端 I/O 目標的裝置。
語法
PDEVICE_OBJECT WdfIoTargetWdmGetTargetPhysicalDevice(
[in] WDFIOTARGET IoTarget
);
參數
[in] IoTarget
遠端 I/O 目標物件的句柄。 此句柄是從先前呼叫 WdfIoTargetCreate 取得。
傳回值
如果 I/O 目標代表 PnP 裝置, WdfIoTargetWdmGetTargetPhysicalDevice 會傳回代表遠端 I/O 目標 PDO 之DEVICE_OBJECT 結構的指標。 否則,方法會傳回 NULL。
如果驅動程式提供無效的物件句柄,就會發生錯誤檢查。
備註
WdfIoTargetWdmGetTargetPhysicalDevice 方法傳回的指標有效,直到驅動程式呼叫 WdfIoTargetClose 或 WdfIoTargetCloseForQueryRemove,或直到刪除遠端 I/O 目標對象為止。 如果驅動程式為遠端 I/O 目標物件提供 EvtCleanupCallback 函式,而且如果在關閉遠端 I/O 目標之前刪除物件,則指標會有效,直到 EvtCleanupCallback 函式傳回為止。
如果驅動程式在移除 WDM 裝置對象之後嘗試存取它,驅動程式可能會導致系統當機。 toastmon 範例示範驅動程式如何提供 EvtIoTargetQueryRemove 回呼函式,以便在移除 I/O 目標時收到通知。
如需 WdfIoTargetWdmGetTargetPhysicalDevice 的詳細資訊,請參閱 取得一般 I/O 目標的相關信息。
如需 I/O 目標的詳細資訊,請參閱 使用 I/O 目標。
範例
下列程式代碼範例會取得DEVICE_OBJECT結構的指標,此結構代表遠端 I/O 目標裝置的 PDO。
PDEVICE_OBJECT pTargetDO;
pTargetDO = WdfIoTargetWdmGetTargetPhysicalDevice(IoTarget);
規格需求
需求 | 值 |
---|---|
目標平台 | Universal |
最低 KMDF 版本 | 1.0 |
標頭 | wdfiotarget.h (包含 Wdf.h) |
程式庫 | Wdf01000.sys (請參閱 Framework Library Versioning.) |
IRQL | <=DISPATCH_LEVEL |
DDI 合規性規則 | DriverCreate (kmdf) 、 KmdfIrql (kmdf) 、 KmdfIrql2 (kmdf) 、 KmdfIrqlExplicit (kmdf) |