Partilhar via


IOCTL_IEEE1284_NEGOTIATE IOCTL (ntddpar.h)

A solicitação IOCTL_IEEE1284_NEGOTIATE define os protocolos de leitura e gravação usados para um dispositivo paralelo. Essa solicitação exige que a porta paralela, à qual o dispositivo paralelo está anexado, seja bloqueada e o dispositivo paralelo seja selecionado. O driver de ônibus fornecido pelo sistema para portas paralelas negocia com o dispositivo paralelo para determinar os modos mais rápidos compatíveis com o chipset host e o dispositivo paralelo entre os modos especificados pelo cliente. O driver de barramento de porta paralela define os modos de leitura e gravação padrão para os modos negociados.

Para obter mais informações, consulte Configuração e limpeza de um modo de comunicação para um dispositivo paralelo.

Código principal

IRP_MJ_DEVICE_CONTROL

Buffer de entrada

O membro AssociatedIrp.SystemBuffer aponta para uma estrutura PARCLASS_NEGOTIATION_MASK que o cliente aloca para as informações de entrada e saída do modo. O cliente define os usReadMask e membros usWriteMask.

Comprimento do buffer de entrada

O membro Parameters.DeviceIoControl.InputBufferLength é definido como o tamanho, em bytes, de uma estrutura PARCLASS_NEGOTIATION_MASK.

Buffer de saída

O AssociatedIrp.SystemBuffer aponta para a estrutura PARCLASS_NEGOTIATION_MASK que o driver de ônibus fornecido pelo sistema para portas paralelas usa para obter informações do modo de saída. O driver de barramento de porta paralela define o usReadMask e membros usWriteMask para os modos negociados.

Comprimento do buffer de saída

O comprimento de uma estrutura PARCLASS_NEGOTIATION_MASK.

Bloco de status

Se a solicitação for bem-sucedida, o membro de Informações do será definido como o tamanho, em bytes, de uma estrutura de PARCLASS_NEGOTIATION_MASK. Caso contrário, o membro de Informações do será definido como zero.

O membro Status é definido como um dos valores de status genéricos retornados por solicitações de controle de dispositivo para dispositivos paralelos ou para o seguinte valor:

STATUS_INVALID_PARAMETER

O valor do membro Parameters.DeviceIoControl.InputBufferLength é menor que o tamanho, em bytes, de um PARCLASS_NEGOTIATION_MASK.

Requisitos

Requisito Valor
cabeçalho ntddpar.h (inclua Ntddpar.h)

Consulte também

PARCLASS_NEGOTIATION_MASK

IOCTL_PAR_GET_DEVICE_CAPS

IOCTL_PAR_GET_DEFAULT_MODES

IOCTL_IEEE1284_GET_MODE