IOCTL_AVCSTRM_CLASS IOCTL (avcstrm.h)
Um driver de subunidade AV/C usa o IRP IRP_MJ_INTERNAL_DEVICE_CONTROL , com o membro IoControlCode definido como IOCTL_AVCSTRM_CLASS, para se comunicar com avcstrm.sys. O driver tem acesso a todas as operações fornecidas pelo driver de filtro de Streaming AV/C (avcstrm.sys) por meio dessa solicitação.
Para obter mais informações sobre IRPs e IOCTLs, consulte Manipulando IRPs.
Código principal
Buffer de entrada
Na entrada, Irp-Parameters-Others.Arguments1>> aponta para uma estrutura AVC_STREAM_REQUEST_BLOCK. O membro Function do AVC_STREAM_REQUEST_BLOCK especifica o tipo de solicitação. Não defina esse membro diretamente. Use a macro INIT_AVCSTRM_HEADER para inicializar esse membro (bem como membros adicionais da estrutura AVC_STREAM_REQUEST_BLOCK). O membro CommandData do AVC_STREAM_REQUEST_BLOCK é uma união que especifica os parâmetros específicos do tipo de solicitação da solicitação. Os parâmetros e seus significados são documentados com cada solicitação (código de função). A enumeração AVCSTRM_FUNCTION fornece uma lista de códigos de função compatíveis comavcstrm.sys.
Comprimento do buffer de entrada
Comprimento de uma estrutura AVC_STREAM_REQUEST_BLOCK .
Buffer de saída
Na saída, Irp-Parameters-Others.Arguments1>> aponta para a estrutura AVC_STREAM_REQUEST_BLOCK passada como entrada. Como parte da conclusão da solicitação, o motorista do ônibus preenche determinados membros do sindicato CommandData da estrutura AVC_STREAM_REQUEST_BLOCK com informações para o motorista.
Comprimento do buffer de saída
Comprimento de uma estrutura AVC_STREAM_REQUEST_BLOCK .
Bloco de status
As informações que o driver de Streaming AV/C retorna no Bloco de Status de E/S são documentadas com cada solicitação.
Comentários
Deve ser chamado em IRQL = PASSIVE_LEVEL.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | avcstrm.h (inclua Avcstrm.h) |