WdfDeviceGetIoTarget 函数 (wdfdevice.h)

[适用于 KMDF 和 UMDF]

WdfDeviceGetIoTarget 方法返回指定设备的函数或筛选器驱动程序的本地 I/O 目标的句柄。

语法

WDFIOTARGET WdfDeviceGetIoTarget(
  [in] WDFDEVICE Device
);

参数

[in] Device

框架设备对象的句柄。

返回值

如果操作成功, WdfDeviceGetIoTarget 将返回框架 I/O 目标对象的句柄。 如果指定的框架设备对象表示 PDO,则该方法返回 NULL

如果驱动程序提供无效的对象句柄,则会发生 bug 检查。

注解

当 UMDF 驱动程序将驱动程序创建的请求发送到本地 I/O 目标时,该请求没有关联的文件对象。 某些较低目标(例如 HIDClass 枚举的原始 PDO)会失败没有关联文件对象的请求。 在这种情况下,UMDF 驱动程序可以指定 WdfIoTargetOpenLocalTargetByFile 来创建表示较低堆栈 (的 I/O 目标,就像使用文件句柄) 本地目标一样。 因此,发送到此 I/O 目标的任何驱动程序创建的请求都与打开的句柄对应的文件对象相关联。

为此,请在调用 WdfIoTargetOpen 之前调用 WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_FILE 函数。

有关 I/O 目标的详细信息,请参阅 使用 I/O 目标

示例

下面的代码示例获取指定设备的本地 I/O 目标的句柄。

WDFIOTARGET  ioTargetHandle;

ioTargetHandle = WdfDeviceGetIoTarget(device);

要求

要求
目标平台 通用
最低 KMDF 版本 1.0
最低 UMDF 版本 2.0
标头 wdfdevice.h (包括 Wdf.h)
Library Wdf01000.sys (KMDF) ;WUDFx02000.dll (UMDF)
IRQL <= DISPATCH_LEVEL
DDI 符合性规则 DriverCreate (kmdf) KmdfIrql (kmdf) KmdfIrql2 (kmdf) 、 KmdfIrqlExplicit (kmdf)