Função UsbBuildOpenStaticStreamsRequest (usbdlib.h)
A função embutida UsbBuildOpenStaticStreamsRequest formata uma estrutura URB para uma solicitação de fluxos abertos. A solicitação abre fluxos associados ao ponto de extremidade em massa especificado.
Sintaxe
void UsbBuildOpenStaticStreamsRequest(
[in, out] PURB Urb,
[in] USBD_PIPE_HANDLE PipeHandle,
[in] USHORT NumberOfStreams,
[in] PUSBD_STREAM_INFORMATION StreamInfoArray
);
Parâmetros
[in, out] Urb
Ponteiro para a estrutura URB a ser formatada para a solicitação de fluxo aberto (URB_FUNCTION_OPEN_STATIC_STREAMS). O chamador deve alocar um pool nãopagado para esse URB.
[in] PipeHandle
Um identificador opaco para o pipe associado ao ponto de extremidade que contém os fluxos a serem abertos.
O driver cliente obtém PipeHandle de uma solicitação de configuração de seleção (URB_FUNCTION_SELECT_CONFIGURATION) anterior ou uma solicitação select-interface (URB_FUNCTION_SELECT_INTERFACE).
[in] NumberOfStreams
O número de fluxos a serem abertos. O valor NumberOfStreams indica o número de elementos na matriz apontada por Streams. Esse valor deve ser maior que zero e menor ou igual ao número máximo de fluxos compatíveis com o hardware do controlador de host. Para obter o número máximo de fluxos com suporte, chame USBD_QueryUsbCapability.
Os fluxos numéricos também devem ser menores ou iguais ao número máximo de fluxos compatíveis com o dispositivo USB. Para obter esse número, inspecione o descritor complementar do ponto de extremidade.
No valor NumberOfStreams, especifique menos de dois valores compatíveis com o controlador host e o dispositivo USB.
[in] StreamInfoArray
Ponteiro para uma matriz inicializada e alocada pelo chamador de estruturas USBD_STREAM_INFORMATION . O comprimento da matriz depende do número de fluxos a serem abertos e deve ser o mesmo que o valor NumberOfStreams .
Retornar valor
Nenhum
Comentários
Para obter um exemplo de código que mostra o formato URB necessário para uma solicitação de fluxos abertos, consulte Como abrir e fechar fluxos estáticos em um ponto de extremidade em massa USB.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Requer WDK para Windows 8. Tem como destino o Windows Vista e versões posteriores do sistema operacional Windows. |
Plataforma de Destino | Área de Trabalho |
Cabeçalho | usbdlib.h |
Confira também
Como abrir e fechar fluxos estáticos em um ponto de extremidade em massa USB