Partilhar via


Portas paralelas

Para desenvolver drivers para portas paralelas, você precisa desses cabeçalhos:

Para obter o guia de programação, consulte Portas Paralelas.

Códigos de controle de E/S

Título Descrição
IOCTL_IEEE1284_GET_MODE IOCTL A solicitação IOCTL_IEEE1284_GET_MODE retorna os protocolos de leitura e gravação do IEEE 1284 que estão atualmente definidos para um dispositivo paralelo.
IOCTL_IEEE1284_NEGOTIATE IOCTL A solicitação IOCTL_IEEE1284_NEGOTIATE define os protocolos de leitura e gravação usados para um dispositivo paralelo.
IOCTL_INTERNAL_DESELECT_DEVICE IOCTL A solicitação IOCTL_INTERNAL_DESELECT_DEVICE desmarca um dispositivo IEEE 1284.3 daisy-chain ou um dispositivo de fim de cadeia IEEE 1284 anexado a uma porta paralela.
IOCTL_INTERNAL_DISCONNECT_IDLE IOCTL A solicitação IOCTL_INTERNAL_DISCONNECT_IDLE desconecta os modos operacionais IEEE 1284 definidos para um dispositivo paralelo.
IOCTL_INTERNAL_GET_MORE_PARALLEL_PORT_INFO IOCTL A solicitação IOCTL_INTERNAL_GET_MORE_PARALLEL_PORT_INFO retorna informações sobre uma porta paralela.
IOCTL_INTERNAL_GET_PARALLEL_PNP_INFO IOCTL A solicitação IOCTL_INTERNAL_GET_PARALLEL_PNP_INFO retorna informações de Plug and Play sobre uma porta paralela.
IOCTL_INTERNAL_GET_PARALLEL_PORT_INFO IOCTL A solicitação IOCTL_INTERNAL_GET_PARALLEL_PORT_INFO retorna informações sobre uma porta paralela.
IOCTL_INTERNAL_INIT_1284_3_BUS IOCTL A solicitação IOCTL_INTERNAL_INIT_1284_3_BUS inicializa e atribui uma ID de dispositivo IEEE 1284.3 a todos os dispositivos de cadeia de conexão 1284.3 anexados a uma porta paralela.
IOCTL_INTERNAL_LOCK_PORT IOCTL A solicitação IOCTL_INTERNAL_LOCK_PORT aloca a porta paralela pai do dispositivo paralelo e seleciona o dispositivo paralelo na porta.
IOCTL_INTERNAL_LOCK_PORT_NO_SELECT IOCTL A solicitação IOCTL_INTERNAL_LOCK_PORT_NO_SELECT aloca a porta paralela pai do dispositivo paralelo, mas não seleciona o dispositivo paralelo.
IOCTL_INTERNAL_PARALLEL_CLEAR_CHIP_MODE IOCTL A solicitação IOCTL_INTERNAL_PARALLEL_CLEAR_CHIP_MODE limpa o modo de operação de uma porta paralela.
IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT IOCTL A solicitação IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT conecta uma rotina de serviço de interrupção opcional e uma rotina opcional de verificação de porta adiada a uma porta paralela.
IOCTL_INTERNAL_PARALLEL_DISCONNECT_INTERRUPT IOCTL A solicitação IOCTL_INTERNAL_PARALLEL_DISCONNECT_INTERRUPT desconecta uma rotina de serviço de interrupção (e uma rotina de serviço de verificação de porta adiada opcional) que foi conectada usando uma solicitação IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT.
IOCTL_INTERNAL_PARALLEL_PORT_ALLOCATE IOCTL A solicitação IOCTL_INTERNAL_PARALLEL_PORT_ALLOCATE aloca uma porta paralela para acesso exclusivo por um cliente.
IOCTL_INTERNAL_PARALLEL_PORT_FREE IOCTL A solicitação IOCTL_INTERNAL_PARALLEL_PORT_FREE libera uma porta paralela.
IOCTL_INTERNAL_PARALLEL_SET_CHIP_MODE IOCTL A solicitação IOCTL_INTERNAL_PARALLEL_SET_CHIP_MODE define o modo de operação de uma porta paralela.
IOCTL_INTERNAL_PARCLASS_CONNECT IOCTL A solicitação IOCTL_INTERNAL_PARCLASS_CONNECT retorna informações sobre uma porta paralela e as rotinas de retorno de chamada que o driver de ônibus fornecido pelo sistema para portas paralelas fornece para operar a porta paralela.
IOCTL_INTERNAL_PARCLASS_DISCONNECT IOCTL A solicitação IOCTL_INTERNAL_PARCLASS_DISCONNECT desconecta um cliente de um dispositivo paralelo.
IOCTL_INTERNAL_RELEASE_PARALLEL_PORT_INFO IOCTL A solicitação IOCTL_INTERNAL_RELEASE_PARALLEL_PORT_INFO retorna STATUS_SUCCESS.
IOCTL_INTERNAL_SELECT_DEVICE IOCTL A solicitação IOCTL_INTERNAL_SELECT_DEVICE
IOCTL_INTERNAL_UNLOCK_PORT IOCTL A solicitação IOCTL_INTERNAL_UNLOCK_PORT desmarca um dispositivo paralelo e libera a porta paralela pai do dispositivo paralelo.
IOCTL_INTERNAL_UNLOCK_PORT_NO_DESELECT IOCTL A solicitação IOCTL_INTERNAL_UNLOCK_PORT_NO_DESELECT libera a porta paralela pai de um dispositivo paralelo.
IOCTL_PAR_GET_DEFAULT_MODES IOCTL A solicitação IOCTL_PAR_GET_DEFAULT_MODES retorna os protocolos IEEE 1284 de gravação padrão (encaminhamento) e leitura (inversa) que o driver de ônibus fornecido pelo sistema para portas paralelas usa.
IOCTL_PAR_GET_DEVICE_CAPS IOCTL A solicitação IOCTL_PAR_GET_DEVICE_CAPS faz o seguinte
IOCTL_PAR_IS_PORT_FREE IOCTL A solicitação IOCTL_PAR_IS_PORT_FREE determina se a porta paralela pai de um dispositivo paralelo é gratuita no momento em que o driver de ônibus fornecido pelo sistema para portas paralelas processa a solicitação.
IOCTL_PAR_QUERY_DEVICE_ID IOCTL A solicitação IOCTL_PAR_QUERY_DEVICE_ID retorna a ID do dispositivo IEEE 1284 de um dispositivo paralelo atribuído pelo driver de função fornecido pelo sistema para portas paralelas.
IOCTL_PAR_QUERY_DEVICE_ID_SIZE IOCTL A solicitação IOCTL_PAR_QUERY_DEVICE_ID_SIZE retorna o tamanho, em bytes, de um buffer que pode conter a ID do dispositivo IEEE 1284 de um dispositivo e um terminador NULL.
IOCTL_PAR_QUERY_INFORMATION IOCTL A solicitação IOCTL_PAR_QUERY_INFORMATION retorna o status de um dispositivo de fim de cadeia IEEE 1284.
IOCTL_PAR_QUERY_LOCATION IOCTL A solicitação IOCTL_PAR_QUERY_LOCATION retorna o nome de link simbólico "LPTn" ou "LPTn.m" associado a um dispositivo paralelo.
IOCTL_PAR_QUERY_RAW_DEVICE_ID IOCTL A solicitação IOCTL_PAR_QUERY_RAW_DEVICE_ID retorna uma ID de dispositivo bruto, que inclui o seguinte
IOCTL_PAR_SET_INFORMATION IOCTL O IOCTL_PAR_SET_INFORMATION solicitação redefine e inicializa um dispositivo paralelo.
IOCTL_PAR_SET_READ_ADDRESS IOCTL A solicitação IOCTL_PAR_SET_READ_ADDRESS define uma porta de recursos estendida (ECP) ou um endereço de leitura (canal) de porta paralela avançada (EPP) para um dispositivo paralelo.
IOCTL_PAR_SET_WRITE_ADDRESS IOCTL A solicitação IOCTL_PAR_SET_WRITE_ADDRESS define uma porta de recursos estendida (ECP) ou um endereço de gravação (canal) de porta paralela avançada (canal) para um dispositivo paralelo. O driver de barramento de porta paralela enfileira essa solicitação em uma fila de trabalho para o dispositivo paralelo.

IOCTLs

 
IOCTL_IEEE1284_GET_MODE

A solicitação IOCTL_IEEE1284_GET_MODE retorna os protocolos de leitura e gravação do IEEE 1284 que estão atualmente definidos para um dispositivo paralelo.
IOCTL_IEEE1284_NEGOTIATE

A solicitação IOCTL_IEEE1284_NEGOTIATE define os protocolos de leitura e gravação usados para um dispositivo paralelo.
IOCTL_INTERNAL_DESELECT_DEVICE

A solicitação IOCTL_INTERNAL_DESELECT_DEVICE desmarca um dispositivo IEEE 1284.3 daisy-chain ou um dispositivo de fim de cadeia IEEE 1284 anexado a uma porta paralela.
IOCTL_INTERNAL_DISCONNECT_IDLE

A solicitação IOCTL_INTERNAL_DISCONNECT_IDLE desconecta os modos operacionais IEEE 1284 definidos para um dispositivo paralelo.
IOCTL_INTERNAL_GET_MORE_PARALLEL_PORT_INFO

A solicitação IOCTL_INTERNAL_GET_MORE_PARALLEL_PORT_INFO retorna informações sobre uma porta paralela.
IOCTL_INTERNAL_GET_PARALLEL_PNP_INFO

A solicitação IOCTL_INTERNAL_GET_PARALLEL_PNP_INFO retorna informações de Plug and Play sobre uma porta paralela.
IOCTL_INTERNAL_GET_PARALLEL_PORT_INFO

A solicitação IOCTL_INTERNAL_GET_PARALLEL_PORT_INFO retorna informações sobre uma porta paralela.
IOCTL_INTERNAL_INIT_1284_3_BUS

A solicitação IOCTL_INTERNAL_INIT_1284_3_BUS inicializa e atribui uma ID de dispositivo IEEE 1284.3 a todos os dispositivos de cadeia de conexão 1284.3 anexados a uma porta paralela.
IOCTL_INTERNAL_LOCK_PORT

A solicitação IOCTL_INTERNAL_LOCK_PORT aloca a porta paralela pai do dispositivo paralelo e seleciona o dispositivo paralelo na porta.
IOCTL_INTERNAL_LOCK_PORT_NO_SELECT

A solicitação IOCTL_INTERNAL_LOCK_PORT_NO_SELECT aloca a porta paralela pai do dispositivo paralelo, mas não seleciona o dispositivo paralelo.
IOCTL_INTERNAL_PARALLEL_CLEAR_CHIP_MODE

A solicitação IOCTL_INTERNAL_PARALLEL_CLEAR_CHIP_MODE limpa o modo de operação de uma porta paralela.
IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT

A solicitação IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT conecta uma rotina de serviço de interrupção opcional e uma rotina opcional de verificação de porta adiada a uma porta paralela.
IOCTL_INTERNAL_PARALLEL_DISCONNECT_INTERRUPT

A solicitação IOCTL_INTERNAL_PARALLEL_DISCONNECT_INTERRUPT desconecta uma rotina de serviço de interrupção (e uma rotina de serviço de verificação de porta adiada opcional) que foi conectada usando uma solicitação IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT.
IOCTL_INTERNAL_PARALLEL_PORT_ALLOCATE

A solicitação IOCTL_INTERNAL_PARALLEL_PORT_ALLOCATE aloca uma porta paralela para acesso exclusivo por um cliente.
IOCTL_INTERNAL_PARALLEL_PORT_FREE

A solicitação IOCTL_INTERNAL_PARALLEL_PORT_FREE libera uma porta paralela.
IOCTL_INTERNAL_PARALLEL_SET_CHIP_MODE

A solicitação IOCTL_INTERNAL_PARALLEL_SET_CHIP_MODE define o modo de operação de uma porta paralela.
IOCTL_INTERNAL_PARCLASS_CONNECT

A solicitação IOCTL_INTERNAL_PARCLASS_CONNECT retorna informações sobre uma porta paralela e as rotinas de retorno de chamada que o driver de ônibus fornecido pelo sistema para portas paralelas fornece para operar a porta paralela.
IOCTL_INTERNAL_PARCLASS_DISCONNECT

A solicitação IOCTL_INTERNAL_PARCLASS_DISCONNECT desconecta um cliente de um dispositivo paralelo.
IOCTL_INTERNAL_RELEASE_PARALLEL_PORT_INFO

A solicitação IOCTL_INTERNAL_RELEASE_PARALLEL_PORT_INFO retorna STATUS_SUCCESS.
IOCTL_INTERNAL_SELECT_DEVICE

O IOCTL_INTERNAL_SELECT_DEVICE solicitação:Aloca a porta paralelaO driver de função fornecido pelo sistema para portas paralelas alocará a porta paralela se o cliente não definir o sinalizador PAR_HAVE_PORT_KEEP_PORT no membro CommandFlags da estrutura de PARALLEL_1284_COMMAND de entrada. Caso contrário, o driver de função de porta paralela não alocará a porta paralela. Seleciona um dispositivo paralelo de cadeia de conexão IEEE 1284.3 ou um dispositivo de fim de cadeia anexado à porta paralelaAlmente, embora um cliente possa selecionar um dispositivo de fim de cadeia usando uma solicitação de dispositivo selecionada, a Microsoft recomenda usar uma solicitação IOCTL_INTERNAL_PARALLEL_PORT_ALLOCATE. O driver de função de porta paralela seleciona o dispositivo de fim de cadeia antes de alocar a porta paralela a um cliente.
IOCTL_INTERNAL_UNLOCK_PORT

A solicitação IOCTL_INTERNAL_UNLOCK_PORT desmarca um dispositivo paralelo e libera a porta paralela pai do dispositivo paralelo.
IOCTL_INTERNAL_UNLOCK_PORT_NO_DESELECT

A solicitação IOCTL_INTERNAL_UNLOCK_PORT_NO_DESELECT libera a porta paralela pai de um dispositivo paralelo.
IOCTL_PAR_GET_DEFAULT_MODES

A solicitação IOCTL_PAR_GET_DEFAULT_MODES retorna os protocolos IEEE 1284 de gravação padrão (encaminhamento) e leitura (inversa) que o driver de ônibus fornecido pelo sistema para portas paralelas usa.
IOCTL_PAR_GET_DEVICE_CAPS

A solicitação IOCTL_PAR_GET_DEVICE_CAPS faz o seguinte:Especifica os protocolos que o driver de ônibus fornecido pelo sistema para portas paralelas não deve usar com um dispositivo paraleloReturns os protocolos operacionais aos quais o dispositivo paralelo dá suporte Para obter mais informações, consulte Configurando e limpando um modo de comunicação para um dispositivo paralelo.
IOCTL_PAR_IS_PORT_FREE

A solicitação IOCTL_PAR_IS_PORT_FREE determina se a porta paralela pai de um dispositivo paralelo é gratuita no momento em que o driver de ônibus fornecido pelo sistema para portas paralelas processa a solicitação.
IOCTL_PAR_QUERY_DEVICE_ID

A solicitação IOCTL_PAR_QUERY_DEVICE_ID retorna a ID do dispositivo IEEE 1284 de um dispositivo paralelo atribuído pelo driver de função fornecido pelo sistema para portas paralelas.
IOCTL_PAR_QUERY_DEVICE_ID_SIZE

A solicitação IOCTL_PAR_QUERY_DEVICE_ID_SIZE retorna o tamanho, em bytes, de um buffer que pode conter a ID do dispositivo IEEE 1284 de um dispositivo e um terminador NULL.
IOCTL_PAR_QUERY_INFORMATION

A solicitação IOCTL_PAR_QUERY_INFORMATION retorna o status de um dispositivo de fim de cadeia IEEE 1284.
IOCTL_PAR_QUERY_LOCATION

A solicitação IOCTL_PAR_QUERY_LOCATION retorna o nome de link simbólico "LPTn" ou "LPTn.m" associado a um dispositivo paralelo.
IOCTL_PAR_QUERY_RAW_DEVICE_ID

A solicitação IOCTL_PAR_QUERY_RAW_DEVICE_ID retorna uma ID de dispositivo bruta, que inclui o seguinte prefixo de dois bytes:_a que especifica o tamanho, em bytes, da ID do dispositivo IEEE 1284 do dispositivo; a ID do dispositivo IEEE 1284; e um terminador NULL.
IOCTL_PAR_SET_INFORMATION

O IOCTL_PAR_SET_INFORMATION solicitação redefine e inicializa um dispositivo paralelo.
IOCTL_PAR_SET_READ_ADDRESS

A solicitação IOCTL_PAR_SET_READ_ADDRESS define uma porta de recursos estendida (ECP) ou um endereço de leitura (canal) de porta paralela avançada (EPP) para um dispositivo paralelo.
IOCTL_PAR_SET_WRITE_ADDRESS

A solicitação IOCTL_PAR_SET_WRITE_ADDRESS define uma porta de recursos estendida (ECP) ou um endereço de gravação (canal) de porta paralela avançada (canal) para um dispositivo paralelo. O driver de barramento de porta paralela enfileira essa solicitação em uma fila de trabalho para o dispositivo paralelo.

Funções

 
PDETERMINE_IEEE_MODES

A rotina de retorno de chamada tipo PDETERMINE_IEEE_MODES determina quais protocolos IEEE 1284 um dispositivo paralelo dá suporte. O driver de ônibus fornecido pelo sistema para portas paralelas fornece essa rotina.
PNEGOTIATE_IEEE_MODE

A rotina de retorno de chamada tipo PNEGOTIATE_IEEE_MODE seleciona os protocolos reversos e de avanço mais rápidos que o driver de ônibus fornecido pelo sistema para portas paralelas dá suporte entre os especificados pelo chamador.
PPARALLEL_CLEAR_CHIP_MODE

A rotina de retorno de chamada tipo PPARALLEL_CLEAR_CHIP_MODE limpa o modo de operação de uma porta paralela redefinindo o modo de comunicação do chipset de host para o modo de compatibilidade do IEEE 1284.
PPARALLEL_DESELECT_ROUTINE

A rotina de retorno de chamada tipo PPARALLEL_DESELECT_ROUTINE desmarca um dispositivo de cadeia de margaridas IEEE 1284.3 ou um dispositivo de fim de cadeia IEEE 1284 anexado a uma porta paralela.
PPARALLEL_FREE_ROUTINE

A rotina de retorno de chamada do tipo PPARALLEL_FREE_ROUTINE libera uma porta paralela. O driver de funções fornecido pelo sistema para portas paralelas fornece essa rotina.
PPARALLEL_IEEE_FWD_TO_REV

A rotina de retorno de chamada tipada em PPARALLEL_IEEE_FWD_TO_REV altera o modo de transferência de encaminhamento para inverso. O driver de ônibus fornecido pelo sistema para portas paralelas fornece essa rotina.
PPARALLEL_IEEE_REV_TO_FWD

A rotina de retorno de chamada tipada em PPARALLEL_IEEE_REV_TO_FWD altera o modo de transferência de inverso para encaminhamento. O driver de ônibus fornecido pelo sistema para portas paralelas fornece essa rotina.
PPARALLEL_QUERY_WAITERS_ROUTINE

A rotina de retorno de chamada tipo PPARALLEL_QUERY_WAITERS_ROUTINE retorna o número de solicitações de IOCTL_INTERNAL_PARALLEL_PORT_ALLOCATE e IOCTL_INTERNAL_SELECT_DEVICE que são enfileiradas na fila de trabalho de uma porta paralela.
PPARALLEL_READ

A rotina de retorno de chamada tipo PPARALLEL_READ lê dados de um dispositivo paralelo. O driver de ônibus fornecido pelo sistema para portas paralelas fornece essa rotina.
PPARALLEL_SET_CHIP_MODE

A rotina de retorno de chamada tipo PPARALLEL_SET_CHIP_MODE define o modo de operação de uma porta paralela. O driver de funções fornecido pelo sistema para portas paralelas fornece essa rotina.
PPARALLEL_TRY_ALLOCATE_ROUTINE

A rotina de retorno de chamada ISR (tipada em PPARALLEL_TRY_ALLOCATE_ROUTINE) tenta alocar uma porta paralela em IRQL = DIRQL. O driver de funções fornecido pelo sistema para portas paralelas fornece essa rotina.
PPARALLEL_TRY_SELECT_ROUTINE

A rotina de retorno de chamada tipo PPARALLEL_TRY_SELECT_ROUTINE seleciona um dispositivo de cadeia de conexão IEEE 1284.3 ou um dispositivo de fim de cadeia IEEE 1284 anexado a uma porta paralela. O driver de funções fornecido pelo sistema para portas paralelas fornece essa rotina.
PPARALLEL_WRITE

A rotina de retorno de chamada do tipo PPARALLEL_WRITE grava dados em um dispositivo paralelo. O driver de ônibus fornecido pelo sistema para portas paralelas fornece essa rotina.
PTERMINATE_IEEE_MODE

A rotina de retorno de chamada do tipo PTERMINATE_IEEE_MODE encerra o modo operacional IEEE atual e define o modo como compatível com IEEE 1284. O driver de ônibus fornecido pelo sistema para portas paralelas fornece essa rotina.

Estruturas

 
MORE_PARALLEL_PORT_INFORMATION

A estrutura MORE_PARALLEL_PORT_INFORMATION especifica informações sobre a interface do sistema que dá suporte à operação de uma porta paralela.
PAR_DEVICE_ID_SIZE_INFORMATION

A estrutura PAR_DEVICE_ID_SIZE_INFORMATION especifica o tamanho, em bytes, de um buffer que pode conter a ID do dispositivo IEEE 1284 de um dispositivo paralelo e um terminador NULL.
PAR_QUERY_INFORMATION

A estrutura PAR_QUERY_INFORMATION especifica o status operacional de uma porta paralela.
PAR_SET_INFORMATION

A estrutura PAR_SET_INFORMATION especifica o status operacional inicial de uma porta paralela.
PARALLEL_1284_COMMAND

A estrutura PARALLEL_1284_COMMAND especifica informações que um cliente usa para selecionar e desmarcar um dispositivo IEEE 1284.3 daisy-chain ou um dispositivo de fim de cadeia IEEE 1284.
PARALLEL_CHIP_MODE

A estrutura PARALLEL_CHIP_MODE especifica o modo de operação de uma porta paralela.
PARALLEL_INTERRUPT_INFORMATION

A estrutura PARALLEL_INTERRUPT_INFORMATION especifica informações que um driver no modo kernel pode usar no contexto de um ISR que o driver conecta a uma porta paralela.
PARALLEL_INTERRUPT_SERVICE_ROUTINE

A estrutura PARALLEL_INTERRUPT_SERVICE_ROUTINE especifica serviços de interrupção que um driver no modo kernel pode se conectar à operação de uma porta paralela.
PARALLEL_PNP_INFORMATION

A estrutura PARALLEL_PNP_INFORMATION especifica informações sobre os recursos de uma porta paralela.
PARALLEL_PORT_INFORMATION

A estrutura PARALLEL_PORT_INFORMATION especifica informações sobre os recursos atribuídos a uma porta paralela, os recursos da porta paralela e ponteiros para rotinas de retorno de chamada que um driver de modo kernel pode usar para operar a porta paralela.
PARCLASS_INFORMATION

A estrutura PARCLASS_INFORMATION especifica informações sobre uma porta paralela, ponteiros para rotinas de retorno de chamada para operar uma porta paralela e ponteiros para rotinas de retorno de chamada para ler e gravar em um dispositivo paralelo.
PARCLASS_NEGOTIATION_MASK

A estrutura PARCLASS_NEGOTIATION_MASK especifica os protocolos de leitura e gravação selecionados por um driver para um dispositivo paralelo.