Compartilhar 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 barramento fornecido pelo sistema para portas paralelas negocia com o dispositivo paralelo para determinar os modos mais rápidos compatíveis com o chipset de 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 Configurando e limpando 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 alocada pelo cliente para a entrada e saída das informações do modo. O cliente define os membros usReadMask e 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 barramento fornecido pelo sistema para portas paralelas usa para obter informações do modo de saída. O driver de barramento de porta paralela define os membros usReadMask e 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 Informações será definido como o tamanho, em bytes, de uma estrutura PARCLASS_NEGOTIATION_MASK. Caso contrário, o membro Informações será definido como zero.

O membro Status é definido como um dos valores genéricos status 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)

Confira também

PARCLASS_NEGOTIATION_MASK

IOCTL_PAR_GET_DEVICE_CAPS

IOCTL_PAR_GET_DEFAULT_MODES

IOCTL_IEEE1284_GET_MODE