Compartir a través de


función USBCAMD_ControlVendorCommand (usbcamdi.h)

La función USBCAMD_ControlVendorCommand envía comandos específicos del proveedor a la canalización de control.

Sintaxis

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

Puntero al contexto específico del dispositivo.

[in] Request

Especifica el valor del campo Solicitud para el comando de proveedor.

[in] Value

Especifica el valor del campo Valor para el comando de proveedor.

[in] Index

Especifica el valor del campo Index para el comando vendor.

[in, out, optional] Buffer

Puntero a un búfer de datos si el comando tiene datos. Si el comando no tiene ningún dato, este valor es NULL.

[in, out] BufferLength

Puntero al valor de longitud del búfer. La longitud del búfer se expresa en bytes. Si el valor de Buffer es NULL, BufferLength también puede ser NULL.

[in] GetData

GetData indica que los datos se enviaron desde el dispositivo al host.

[in, optional] CommandComplete

Puntero a un minidriver de cámara definido CommandCompleteFunction, al que se llama cuando se completa la lectura o escritura masivas. Este valor puede ser NULL.

[in, optional] CommandContext

Puntero a un bloque de memoria, que se pasa como argumento al minidriver de cámara definido CommandCompleteFunction.

Valor devuelto

USBCAMD_ControlVendorCommand devuelve el código NTSTATUS del comando de proveedor.

Otros posibles códigos de error son:

Código devuelto Descripción
STATUS_PENDING El comando vendor se aplaza.
STATUS_INSUFFICIENT_RESOURCES No hay recursos suficientes para asignar el comando de proveedor.

Comentarios

Se puede llamar a esta función en IRQL >= PASSIVE_LEVEL. Si se llama a la función en irQL > PASSIVE_LEVEL, el comando se aplaza. Después de finalizar, se llama al minidriver de cámara CommandCompleteFunction definido y se pasa el valor en el argumento CommandContext *.*

Requisitos

Requisito Value
Plataforma de destino Escritorio
Encabezado usbcamdi.h (incluya Usbcamdi.h)
Library Usbcamd2.lib
IRQL Mayor o igual que PASSIVE_LEVEL (vea la sección Comentarios)

Consulte también

CommandCompleteFunction