Функция UsbBuildOpenStaticStreamsRequest (usbdlib.h)

Функция UsbBuildOpenStaticStreamsRequest форматирует структуру URB для запроса открытых потоков. Запрос открывает потоки, связанные с указанной массовой конечной точкой.

Синтаксис

VOID UsbBuildOpenStaticStreamsRequest(
  [in, out] PURB                     Urb,
  [in]      USBD_PIPE_HANDLE         PipeHandle,
  [in]      USHORT                   NumberOfStreams,
  [in]      PUSBD_STREAM_INFORMATION StreamInfoArray
);

Параметры

[in, out] Urb

Указатель на структуру URB, которая будет отформатирована для запроса open-stream (URB_FUNCTION_OPEN_STATIC_STREAMS). Вызывающий объект должен выделить непагованный пул для этого URB.

[in] PipeHandle

Непрозрачный дескриптор для канала, связанного с конечной точкой, содержащей открытые потоки.

Драйвер клиента получает PipeHandle из предыдущего запроса конфигурации выбора (URB_FUNCTION_SELECT_CONFIGURATION) или запроса на выборку (URB_FUNCTION_SELECT_INTERFACE).

[in] NumberOfStreams

Число открытых потоков. Значение NumberOfStreams указывает количество элементов в массиве, на которое указывает Streams. Это значение должно быть больше нуля и меньше или равно максимальному количеству потоков, поддерживаемых оборудованием контроллера узла. Чтобы получить максимальное количество поддерживаемых потоков, вызовите USBD_QueryUsbCapability.

Числовой поток также должен быть меньше или равен максимальному количеству потоков, поддерживаемых USB-устройством. Чтобы получить это число, проверьте дескриптор компаньона конечной точки.

В значении NumberOfStreams укажите меньше двух значений, поддерживаемых контроллером узла и USB-устройством.

[in] StreamInfoArray

Указатель на выделенный вызывающим массивом USBD_STREAM_INFORMATION структур. Длина массива зависит от количества открытых потоков и должно совпадать со значением NumberOfStreams.

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

Никакой

Замечания

Пример кода, показывающий формат URB, необходимый для запроса open-streams, см. в разделе Как открыть и закрыть статические потоки вмассовой загрузки USB.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Требуется WDK для Windows 8. Предназначено для Windows Vista и более поздних версий операционной системы Windows.
целевая платформа Настольный
заголовка usbdlib.h

См. также

Как открывать и закрывать статические потоки в массовой конечной точки USB

_URB_OPEN_STATIC_STREAMS