IOCTL_AVC_UPDATE_VIRTUAL_SUBUNIT_INFO IOCTL (avc.h)

El código de control de E/S de IOCTL_AVC_UPDATE_VIRTUAL_SUBUNIT_INFO controla la enumeración de subunits virtuales. Está disponible para el modo de usuario, así como para los componentes en modo kernel a través del envío IRP_MJ_DEVICE_CONTROL. Para la comunicación entre controladores, es un METHOD_BUFFERED IOCTL, por lo que establece los campos IRP en consecuencia (IrpStack-Parameters.DeviceIoControl.InputBufferLength> e Irp-AssociatedIrp.SystemBuffer>).

IOCTL_AVC_UPDATE_VIRTUAL_SUBUNIT_INFO se usa para agregar o quitar identificadores de subbúnit de un solo tipo. Las llamadas sucesivas con una parte de identificador diferente de la dirección de la subbúsita hacen que cambie el número de identificadores enumerados. Tenga en cuenta que avc.sys agrega o quita solo los identificadores más altos. Se trata de una limitación de la especificación av/C, no de la implementación del controlador.

Este IOCTL usa la estructura de AVC_SUBUNIT_ADDR_SPEC.

Código principal

IRP_MJ_DEVICE_CONTROL

Bloque de estado

Si se ejecuta correctamente, el controlador de protocolo AV/C establece Irp-IoStatus.Status>en STATUS_SUCCESS.

Entre los posibles otros valores devueltos se incluyen:

Valor devuelto Descripción
STATUS_INSUFFICIENT_RESOURCES No se ha pasado ningún búfer o no se han superado recursos suficientes para realizar una consulta del Registro.
STATUS_INVALID_BUFFER_SIZE El búfer pasado en Irp->AssociatedIrp.SystemBuffer debe ser al menos tan grande como sizeof(AVC_SUBUNIT_ADDR_SPEC), que incluye una dirección de subbúnit de un solo byte, pero limitada a una dirección de subbúnit de 32 bytes.
STATUS_INVALID_PARAMETER La dirección de subbunit se especificó incorrectamente.
STATUS_ACCESS_DENIED El usuario actual no tiene privilegios de acceso al Registro suficientes para que la actualización sea persistente.

Comentarios

Se debe llamar a en IRQL = PASSIVE_LEVEL.

Requisitos

Requisito Valor
Header avc.h (incluya Avc.h)

Consulte también

AVC_SUBUNIT_ADDR_SPEC

IOCTL_AVC_BUS_RESET

IOCTL_AVC_CLASS

IOCTL_AVC_REMOVE_VIRTUAL_SUBUNIT_INFO