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


Функция WdfUsbTargetPipeWdmGetPipeHandle (wdfusb.h)

[Применимо только к KMDF]

Метод WdfUsbTargetPipeWdmGetPipeHandle возвращает дескриптор типа USBD_PIPE_HANDLE, связанный с указанным объектом канала платформы.

Синтаксис

USBD_PIPE_HANDLE WdfUsbTargetPipeWdmGetPipeHandle(
  [in] WDFUSBPIPE UsbPipe
);

Параметры

[in] UsbPipe

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

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

WdfUsbTargetPipeWdmGetPipeHandle возвращает дескриптор типа USBD_PIPE_HANDLE.

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

Замечания

Драйвер на основе платформы должен получить дескриптор типа USBD_PIPE_HANDLE, только если он создает URB, для работы с которым требуется дескриптор канала.

Драйвер может вызвать метод WdfUsbTargetPipeWdmGetPipeHand le после вызова WdfUsbTargetDeviceSelectConfig. Дескриптор USBD_PIPE_HANDLE типа, который WdfUsbTargetPipeGetPipeHandle возвращается, пока драйвер не вызывает WdfUsbTargetDeviceSelectConfig, драйвер вызывает WdfUsbInterfaceSelectSettingили объект канала платформы. Если драйвер предоставляет функцию EvtCleanupCallback для объекта канала платформы и если объект удаляется перед вызовом драйвера WdfUsbTargetDeviceSelectConfig или вызывает WdfUsbInterfaceSelectSetting, дескриптор действителен до тех пор, пока функция EvtCleanupCallback.

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

Примеры

Следующий пример кода получает дескриптор типа USBD_PIPE_HANDLE для указанного канала.

USBD_PIPE_HANDLE  usbdPipeHandle;

usbdPipeHandle = WdfUsbTargetPipeWdmGetPipeHandle(UsbPipe);

Требования

Требование Ценность
целевая платформа Всеобщий
минимальная версия KMDF 1.0
заголовка wdfusb.h (include Wdfusb.h)
библиотеки Wdf01000.sys (см. управление версиями библиотеки Платформы).)
IRQL <=DISPATCH_LEVEL
правил соответствия DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), UsbKmdfIrql(kmdf), UsbKmdfIrql2(kmdf), UsbKmdfIrqlExplicit(kmdf)

См. также

URB

WdfUsbInterfaceGetConfiguredPipe

WdfUsbTargetDeviceSelectConfig