Поделиться через


Функция WdfDeviceGetIoTarget (wdfdevice.h)

[Применимо к KMDF и UMDF]

Метод WdfDeviceGetIoTarget возвращает дескриптор локальному целевому объекту ввода-вывода драйвера функции или фильтра для указанного устройства.

Синтаксис

WDFIOTARGET WdfDeviceGetIoTarget(
  [in] WDFDEVICE Device
);

Параметры

[in] Device

Дескриптор объекта устройства платформы.

Возвращаемое значение

Если операция выполнена успешно, WdfDeviceGetIoTarget возвращает дескриптор целевому объекту ввода-вывода платформы. Если указанный объект устройства платформы представляет PDO, метод возвращает значение NULL.

Ошибка проверка возникает, если драйвер предоставляет недопустимый дескриптор объекта.

Комментарии

Когда драйвер UMDF отправляет созданный драйвером запрос в локальный целевой объект ввода-вывода, запрос не имеет связанного объекта файла. Некоторые более низкие целевые объекты, такие как необработанные PDO с перечислением HIDClass, завершаются неудачными запросами, не имеющими связанного объекта файла. В этом случае драйвер UMDF может указать WdfIoTargetOpenLocalTargetByFile , чтобы создать целевой объект ввода-вывода, представляющий нижний стек (как и локальный целевой объект) с помощью дескриптора файла. В результате все запросы, созданные драйвером, отправляемые этому целевому объекту ввода-вывода, связываются с объектом файла, соответствующим открытому дескриптору.

Для этого вызовите функцию WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_FILE перед вызовом WdfIoTargetOpen.

Дополнительные сведения о целевых объектах ввода-вывода см. в разделе Использование целевых объектов ввода-вывода.

Примеры

В следующем примере кода показано, как получить дескриптор для локального целевого объекта ввода-вывода указанного устройства.

WDFIOTARGET  ioTargetHandle;

ioTargetHandle = WdfDeviceGetIoTarget(device);

Требования

Требование Значение
Целевая платформа Универсальное
Минимальная версия KMDF 1,0
Минимальная версия UMDF 2,0
Верхняя часть wdfdevice.h (включая Wdf.h)
Библиотека Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL <= DISPATCH_LEVEL
Правила соответствия DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)