Compartilhar via


função USBCAMD_ControlVendorCommand (usbcamdi.h)

A função USBCAMD_ControlVendorCommand envia comandos específicos do fornecedor para o pipe de controle.

Sintaxe

NTSTATUS USBCAMD_ControlVendorCommand(
  [in]                PVOID                      DeviceContext,
  [in]                UCHAR                      Request,
  [in]                USHORT                     Value,
  [in]                USHORT                     Index,
  [in, out, optional] PVOID                      Buffer,
  [in, out]           PULONG                     BufferLength,
  [in]                BOOLEAN                    GetData,
  [in, optional]      PCOMMAND_COMPLETE_FUNCTION CommandComplete,
  [in, optional]      PVOID                      CommandContext
);

Parâmetros

[in] DeviceContext

Ponteiro para o contexto específico do dispositivo.

[in] Request

Especifica o valor do campo solicitação para o comando do fornecedor.

[in] Value

Especifica o valor do campo Value para o comando do fornecedor.

[in] Index

Especifica o valor do campo índice para o comando do fornecedor.

[in, out, optional] Buffer

Ponteiro para um buffer de dados se o comando tiver dados. Se o comando não tiver dados, esse valor será NULL.

[in, out] BufferLength

Ponteiro para o valor de comprimento do buffer. O comprimento do buffer é expresso em bytes. Se o valor de buffer for NULL, BufferLength também poderá ser NULL.

[in] GetData

GetData indica que os dados foram enviados do dispositivo para o host.

[in, optional] CommandComplete

Ponteiro para um minidriver de câmera definido CommandCompleteFunction, que é chamado quando a leitura ou gravação em massa é concluída. Esse valor pode ser NULL.

[in, optional] CommandContext

Ponteiro para um bloco de memória, que é passado como um argumento para o minidriver de câmera definido CommandCompleteFunction.

Valor de retorno

USBCAMD_ControlVendorCommand retorna o código NTSTATUS do comando do fornecedor.

Outros códigos de erro possíveis incluem:

Código de retorno Descrição
STATUS_PENDING O comando do fornecedor é adiado.
STATUS_INSUFFICIENT_RESOURCES Não há recursos suficientes para alocar o comando do fornecedor.

Observações

Essa função pode ser chamada em IRQL >= PASSIVE_LEVEL. Se a função for chamada no IRQL > PASSIVE_LEVEL, o comando será adiado. Após a conclusão, o minidriver de câmera definido commandCompleteFunction é chamado e passado o valor no argumento CommandContext*.*

Requisitos

Requisito Valor
da Plataforma de Destino Área de trabalho
cabeçalho usbcamdi.h (inclua Usbcamdi.h)
biblioteca Usbcamd2.lib
IRQL Maior ou igual a PASSIVE_LEVEL (seção Ver Comentários)

Consulte também

commandCompleteFunction