Compartilhar via


IOCTL_SERIAL_LSRMST_INSERT IOCTL (ntddser.h)

A solicitação IOCTL_SERIAL_LSRMST_INSERT habilita ou desabilita a inserção de informações sobre status de linha e status de modem no fluxo de dados de recebimento. Se a inserção LSRMST estiver habilitada, o driver inserirá informações de evento para os tipos de eventos com suporte. As informações do evento incluem um cabeçalho de evento seguido por dados específicos do evento.

O cabeçalho do evento contém um caractere de escape especificado pelo cliente e uma constante SERIAL_LSRMST_XXX que indica o tipo de evento. O driver dá suporte aos seguintes tipos de evento:

SERIAL_LSRMST_LSR_DATA
Ocorreu uma alteração na linha status. O driver do controlador serial insere um cabeçalho de evento seguido pelos dados específicos do evento, que é o valor da linha status registro seguido pelo caractere presente no hardware de recebimento quando a alteração de status de linha foi processada.
SERIAL_LSRMST_LSR_NODATA
Ocorreu uma alteração status linha, mas nenhum dado estava disponível no buffer de recebimento. O driver do controlador serial insere um cabeçalho de evento seguido pelos dados específicos do evento, que é o valor da linha status registrar quando a linha status alteração foi processada.
SERIAL_LSRMST_MST
Ocorreu uma alteração no modem status. O driver do controlador serial insere um cabeçalho de evento seguido pelos dados específicos do evento, que é o valor do modem status registrar quando a alteração status modem foi processada.
SERIAL_LSRMST_ESCAPE
Indica que o próximo caractere no fluxo de dados de recebimento, que foi recebido do dispositivo, é idêntico ao caractere de escape especificado pelo cliente. O driver do controlador serial insere um cabeçalho de evento. Não há dados específicos do evento.

Código principal

IRP_MJ_DEVICE_CONTROL

Buffer de entrada

O membro AssociatedIrp.SystemBuffer aponta para um valor de entrada UCHAR alocado pelo cliente a ser usado como o caractere de escape. Se o caractere de escape não for zero, a inserção será habilitada e o driver serial usará o caractere de escape especificado. Caso contrário, a inserção será desabilitada.

Comprimento do buffer de entrada

O membro Parameters.DeviceIoControl.InputBufferLength é definido como o tamanho, em bytes, de um UCHAR.

Buffer de saída

Nenhum.

Comprimento do buffer de saída

Nenhum.

Bloco de status

Se a solicitação for bem-sucedida, o membro Informações será definido como o tamanho, em bytes, de um UCHAR. Caso contrário, As informações serão definidas como zero.

O membro Status é definido como um dos valores de status genéricos para solicitações de controle de dispositivo serial. Um status de STATUS_INVALID_PARAMETER indica que o caractere de escape especificado é o mesmo que o XON (transmissão) ou o caractere XOFF (transmissão) ou que a substituição de erro está habilitada com o controle de fluxo de handshake.

Requisitos

Requisito Valor
Cabeçalho ntddser.h (inclua Ntddser.h)