Параллельные порты

Общие сведения о технологии параллельных портов.

Для разработки параллельных портов вам потребуются следующие заголовки:

Руководство по программированию см. в разделе Параллельные порты.

Коды элементов управления вводом-выводом

Заголовок Описание
IOCTL_IEEE1284_GET_MODE IOCTL Запрос IOCTL_IEEE1284_GET_MODE возвращает протоколы чтения и записи IEEE 1284, которые в настоящее время заданы для параллельного устройства.
IOCTL_IEEE1284_NEGOTIATE IOCTL Запрос IOCTL_IEEE1284_NEGOTIATE задает протоколы чтения и записи, используемые для параллельного устройства.
IOCTL_INTERNAL_DESELECT_DEVICE IOCTL Запрос IOCTL_INTERNAL_DESELECT_DEVICE отменяет выбор устройства IEEE 1284.3 или конечного устройства IEEE 1284, подключенного к параллельному порту.
IOCTL_INTERNAL_DISCONNECT_IDLE IOCTL Запрос IOCTL_INTERNAL_DISCONNECT_IDLE отключает режимы работы IEEE 1284, заданные для параллельного устройства.
IOCTL_INTERNAL_GET_MORE_PARALLEL_PORT_INFO IOCTL Запрос IOCTL_INTERNAL_GET_MORE_PARALLEL_PORT_INFO возвращает сведения о параллельном порте.
IOCTL_INTERNAL_GET_PARALLEL_PNP_INFO IOCTL Запрос IOCTL_INTERNAL_GET_PARALLEL_PNP_INFO возвращает сведения о параллельном порту Plug and Play.
IOCTL_INTERNAL_GET_PARALLEL_PORT_INFO IOCTL Запрос IOCTL_INTERNAL_GET_PARALLEL_PORT_INFO возвращает сведения о параллельном порте.
IOCTL_INTERNAL_INIT_1284_3_BUS IOCTL Запрос IOCTL_INTERNAL_INIT_1284_3_BUS инициализирует и назначает идентификатор устройства IEEE 1284.3 всем сетевым устройствам 1284.3, подключенным к параллельному порту.
IOCTL_INTERNAL_LOCK_PORT IOCTL Запрос IOCTL_INTERNAL_LOCK_PORT выделяет родительский параллельный порт параллельного устройства и выбирает параллельное устройство в порте.
IOCTL_INTERNAL_LOCK_PORT_NO_SELECT IOCTL Запрос IOCTL_INTERNAL_LOCK_PORT_NO_SELECT выделяет родительский параллельный порт параллельного устройства, но не выбирает параллельное устройство.
IOCTL_INTERNAL_PARALLEL_CLEAR_CHIP_MODE IOCTL Запрос IOCTL_INTERNAL_PARALLEL_CLEAR_CHIP_MODE очищает режим работы параллельного порта.
IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT IOCTL Запрос IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT подключает необязательную подпрограмму службы прерываний и необязательный отложенный порт проверка подпрограмму с параллельным портом.
IOCTL_INTERNAL_PARALLEL_DISCONNECT_INTERRUPT IOCTL Запрос IOCTL_INTERNAL_PARALLEL_DISCONNECT_INTERRUPT отключает подпрограмму обслуживания прерываний (и необязательный отложенный порт проверка подпрограмму службы), подключенную с помощью запроса IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT.
IOCTL_INTERNAL_PARALLEL_PORT_ALLOCATE IOCTL Запрос IOCTL_INTERNAL_PARALLEL_PORT_ALLOCATE выделяет параллельный порт для монопольного доступа клиента.
IOCTL_INTERNAL_PARALLEL_PORT_FREE IOCTL Запрос IOCTL_INTERNAL_PARALLEL_PORT_FREE освобождает параллельный порт.
IOCTL_INTERNAL_PARALLEL_SET_CHIP_MODE IOCTL Запрос IOCTL_INTERNAL_PARALLEL_SET_CHIP_MODE задает режим работы параллельного порта.
IOCTL_INTERNAL_PARCLASS_CONNECT IOCTL Запрос IOCTL_INTERNAL_PARCLASS_CONNECT возвращает сведения о параллельном порте и подпрограммах обратного вызова, предоставляемых системным драйвером шины для параллельных портов для работы с параллельным портом.
IOCTL_INTERNAL_PARCLASS_DISCONNECT IOCTL Запрос IOCTL_INTERNAL_PARCLASS_DISCONNECT отключает клиент от параллельного устройства.
IOCTL_INTERNAL_RELEASE_PARALLEL_PORT_INFO IOCTL Запрос IOCTL_INTERNAL_RELEASE_PARALLEL_PORT_INFO возвращает STATUS_SUCCESS.
IOCTL_INTERNAL_SELECT_DEVICE IOCTL Запрос IOCTL_INTERNAL_SELECT_DEVICE
IOCTL_INTERNAL_UNLOCK_PORT IOCTL Запрос IOCTL_INTERNAL_UNLOCK_PORT отменяет выбор параллельного устройства и освобождает родительский параллельный порт параллельного устройства.
IOCTL_INTERNAL_UNLOCK_PORT_NO_DESELECT IOCTL Запрос IOCTL_INTERNAL_UNLOCK_PORT_NO_DESELECT освобождает родительский параллельный порт параллельного устройства.
IOCTL_PAR_GET_DEFAULT_MODES IOCTL Запрос IOCTL_PAR_GET_DEFAULT_MODES возвращает протоколы IEEE 1284 для записи (пересылки) и чтения (обратного) по умолчанию, используемые драйвером шины для параллельных портов.
IOCTL_PAR_GET_DEVICE_CAPS IOCTL Запрос IOCTL_PAR_GET_DEVICE_CAPS выполняет следующие действия.
IOCTL_PAR_IS_PORT_FREE IOCTL Запрос IOCTL_PAR_IS_PORT_FREE определяет, свободен ли родительский параллельный порт параллельного устройства в то время, когда драйвер шины, предоставляемый системой для параллельных портов, обрабатывает запрос.
IOCTL_PAR_QUERY_DEVICE_ID IOCTL Запрос IOCTL_PAR_QUERY_DEVICE_ID возвращает идентификатор устройства IEEE 1284 параллельного устройства, назначенного системным драйвером функции для параллельных портов.
IOCTL_PAR_QUERY_DEVICE_ID_SIZE IOCTL Запрос IOCTL_PAR_QUERY_DEVICE_ID_SIZE возвращает размер (в байтах) буфера, который может содержать идентификатор устройства IEEE 1284 и признак конца NULL.
IOCTL_PAR_QUERY_INFORMATION IOCTL Запрос IOCTL_PAR_QUERY_INFORMATION возвращает состояние конечного устройства IEEE 1284.
IOCTL_PAR_QUERY_LOCATION IOCTL Запрос IOCTL_PAR_QUERY_LOCATION возвращает символьное имя ссылки "LPTn" или "LPTn.m", связанное с параллельным устройством.
IOCTL_PAR_QUERY_RAW_DEVICE_ID IOCTL Запрос IOCTL_PAR_QUERY_RAW_DEVICE_ID возвращает необработанный идентификатор устройства, который включает следующее:
IOCTL_PAR_SET_INFORMATION IOCTL Запрос IOCTL_PAR_SET_INFORMATION сбрасывает и инициализирует параллельное устройство.
IOCTL_PAR_SET_READ_ADDRESS IOCTL Запрос IOCTL_PAR_SET_READ_ADDRESS задает адрес чтения (канал) для параллельного устройства через порт расширенных возможностей (ECP) или расширенный параллельный порт (EPP).
IOCTL_PAR_SET_WRITE_ADDRESS IOCTL Запрос IOCTL_PAR_SET_WRITE_ADDRESS задает адрес записи (канал) для порта расширенных возможностей (ECP) или расширенного параллельного порта (EPP) для параллельного устройства. Драйвер параллельной шины портов помещает этот запрос в рабочую очередь для параллельного устройства.

Функции IOCTL

 
IOCTL_IEEE1284_GET_MODE

Запрос IOCTL_IEEE1284_GET_MODE возвращает протоколы чтения и записи IEEE 1284, которые в настоящее время заданы для параллельного устройства.
IOCTL_IEEE1284_NEGOTIATE

Запрос IOCTL_IEEE1284_NEGOTIATE задает протоколы чтения и записи, используемые для параллельного устройства.
IOCTL_INTERNAL_DESELECT_DEVICE

Запрос IOCTL_INTERNAL_DESELECT_DEVICE отменяет выбор устройства IEEE 1284.3 или конечного устройства IEEE 1284, подключенного к параллельному порту.
IOCTL_INTERNAL_DISCONNECT_IDLE

Запрос IOCTL_INTERNAL_DISCONNECT_IDLE отключает режимы работы IEEE 1284, заданные для параллельного устройства.
IOCTL_INTERNAL_GET_MORE_PARALLEL_PORT_INFO

Запрос IOCTL_INTERNAL_GET_MORE_PARALLEL_PORT_INFO возвращает сведения о параллельном порте.
IOCTL_INTERNAL_GET_PARALLEL_PNP_INFO

Запрос IOCTL_INTERNAL_GET_PARALLEL_PNP_INFO возвращает сведения о параллельном порту Plug and Play.
IOCTL_INTERNAL_GET_PARALLEL_PORT_INFO

Запрос IOCTL_INTERNAL_GET_PARALLEL_PORT_INFO возвращает сведения о параллельном порте.
IOCTL_INTERNAL_INIT_1284_3_BUS

Запрос IOCTL_INTERNAL_INIT_1284_3_BUS инициализирует и назначает идентификатор устройства IEEE 1284.3 всем сетевым устройствам 1284.3, подключенным к параллельному порту.
IOCTL_INTERNAL_LOCK_PORT

Запрос IOCTL_INTERNAL_LOCK_PORT выделяет родительский параллельный порт параллельного устройства и выбирает параллельное устройство в порте.
IOCTL_INTERNAL_LOCK_PORT_NO_SELECT

Запрос IOCTL_INTERNAL_LOCK_PORT_NO_SELECT выделяет родительский параллельный порт параллельного устройства, но не выбирает параллельное устройство.
IOCTL_INTERNAL_PARALLEL_CLEAR_CHIP_MODE

Запрос IOCTL_INTERNAL_PARALLEL_CLEAR_CHIP_MODE очищает режим работы параллельного порта.
IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT

Запрос IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT подключает необязательную подпрограмму службы прерываний и необязательный отложенный порт проверка подпрограмму с параллельным портом.
IOCTL_INTERNAL_PARALLEL_DISCONNECT_INTERRUPT

Запрос IOCTL_INTERNAL_PARALLEL_DISCONNECT_INTERRUPT отключает подпрограмму обслуживания прерываний (и необязательный отложенный порт проверка подпрограмму службы), подключенную с помощью запроса IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT.
IOCTL_INTERNAL_PARALLEL_PORT_ALLOCATE

Запрос IOCTL_INTERNAL_PARALLEL_PORT_ALLOCATE выделяет параллельный порт для монопольного доступа клиента.
IOCTL_INTERNAL_PARALLEL_PORT_FREE

Запрос IOCTL_INTERNAL_PARALLEL_PORT_FREE освобождает параллельный порт.
IOCTL_INTERNAL_PARALLEL_SET_CHIP_MODE

Запрос IOCTL_INTERNAL_PARALLEL_SET_CHIP_MODE задает режим работы параллельного порта.
IOCTL_INTERNAL_PARCLASS_CONNECT

Запрос IOCTL_INTERNAL_PARCLASS_CONNECT возвращает сведения о параллельном порте и подпрограммах обратного вызова, предоставляемых системным драйвером шины для параллельных портов для работы с параллельным портом.
IOCTL_INTERNAL_PARCLASS_DISCONNECT

Запрос IOCTL_INTERNAL_PARCLASS_DISCONNECT отключает клиент от параллельного устройства.
IOCTL_INTERNAL_RELEASE_PARALLEL_PORT_INFO

Запрос IOCTL_INTERNAL_RELEASE_PARALLEL_PORT_INFO возвращает STATUS_SUCCESS.
IOCTL_INTERNAL_SELECT_DEVICE

Запрос IOCTL_INTERNAL_SELECT_DEVICE: выделяет параллельный порт. Предоставленный системой драйвер-функция для параллельных портов выделяет параллельный порт, если клиент не устанавливает флаг PAR_HAVE_PORT_KEEP_PORT в элементе CommandFlags структуры входных PARALLEL_1284_COMMAND. В противном случае драйвер функции параллельного порта не выделяет параллельный порт. Выбирает параллельное устройство IEEE 1284.3 или устройство конца цепочки, подключенное к параллельному порту. Если клиент может выбрать устройство конца цепочки с помощью запроса на выбор устройства, корпорация Майкрософт рекомендует использовать запрос IOCTL_INTERNAL_PARALLEL_PORT_ALLOCATE. Драйвер функции параллельных портов выбирает устройство конца цепочки перед выделением параллельного порта клиенту.
IOCTL_INTERNAL_UNLOCK_PORT

Запрос IOCTL_INTERNAL_UNLOCK_PORT отменяет выбор параллельного устройства и освобождает родительский параллельный порт параллельного устройства.
IOCTL_INTERNAL_UNLOCK_PORT_NO_DESELECT

Запрос IOCTL_INTERNAL_UNLOCK_PORT_NO_DESELECT освобождает родительский параллельный порт параллельного устройства.
IOCTL_PAR_GET_DEFAULT_MODES

Запрос IOCTL_PAR_GET_DEFAULT_MODES возвращает протоколы IEEE 1284 для записи (пересылки) и чтения (обратного) по умолчанию, используемые драйвером шины для параллельных портов.
IOCTL_PAR_GET_DEVICE_CAPS

Запрос IOCTL_PAR_GET_DEVICE_CAPS выполняет следующее. Указывает протоколы, которые драйвер шины, предоставляемый системой, для параллельных портов не должен использовать с параллельным устройствомОтключает операционные протоколы, поддерживаемые параллельным устройством. Дополнительные сведения см. в статье Настройка и очистка режима связи для параллельного устройства.
IOCTL_PAR_IS_PORT_FREE

Запрос IOCTL_PAR_IS_PORT_FREE определяет, свободен ли родительский параллельный порт параллельного устройства в то время, когда драйвер шины, предоставляемый системой для параллельных портов, обрабатывает запрос.
IOCTL_PAR_QUERY_DEVICE_ID

Запрос IOCTL_PAR_QUERY_DEVICE_ID возвращает идентификатор устройства IEEE 1284 параллельного устройства, назначенного системным драйвером функции для параллельных портов.
IOCTL_PAR_QUERY_DEVICE_ID_SIZE

Запрос IOCTL_PAR_QUERY_DEVICE_ID_SIZE возвращает размер (в байтах) буфера, который может содержать идентификатор устройства IEEE 1284 и признак конца NULL.
IOCTL_PAR_QUERY_INFORMATION

Запрос IOCTL_PAR_QUERY_INFORMATION возвращает состояние конечного устройства IEEE 1284.
IOCTL_PAR_QUERY_LOCATION

Запрос IOCTL_PAR_QUERY_LOCATION возвращает символьное имя ссылки "LPTn" или "LPTn.m", связанное с параллельным устройством.
IOCTL_PAR_QUERY_RAW_DEVICE_ID

Запрос IOCTL_PAR_QUERY_RAW_DEVICE_ID возвращает необработанный идентификатор устройства, который включает следующее: _a двухбайтный префикс, указывающий размер (в байтах) идентификатора устройства IEEE 1284; идентификатор устройства IEEE 1284; и признак конца NULL.
IOCTL_PAR_SET_INFORMATION

Запрос IOCTL_PAR_SET_INFORMATION сбрасывает и инициализирует параллельное устройство.
IOCTL_PAR_SET_READ_ADDRESS

Запрос IOCTL_PAR_SET_READ_ADDRESS задает адрес чтения (канал) для параллельного устройства через порт расширенных возможностей (ECP) или расширенный параллельный порт (EPP).
IOCTL_PAR_SET_WRITE_ADDRESS

Запрос IOCTL_PAR_SET_WRITE_ADDRESS задает адрес записи (канал) для порта расширенных возможностей (ECP) или расширенного параллельного порта (EPP) для параллельного устройства. Драйвер параллельной шины портов помещает этот запрос в рабочую очередь для параллельного устройства.

Функции

 
PDETERMINE_IEEE_MODES

Подпрограмма обратного вызова с типом PDETERMINE_IEEE_MODES определяет, какие протоколы IEEE 1284 поддерживает параллельное устройство. Эта процедура предоставляется системным драйвером шины для параллельных портов.
PNEGOTIATE_IEEE_MODE

Подпрограмма обратного вызова с типом PNEGOTIATE_IEEE_MODE выбирает самый быстрый и обратный протоколы, поддерживаемые драйвером шины системы для параллельных портов из числа протоколов, указанных вызывающим объектом.
PPARALLEL_CLEAR_CHIP_MODE

Подпрограмма обратного вызова с типом PPARALLEL_CLEAR_CHIP_MODE очищает режим работы параллельного порта путем сброса режима связи набора микросхем узла в режим совместимости IEEE 1284.
PPARALLEL_DESELECT_ROUTINE

Подпрограмма обратного вызова с PPARALLEL_DESELECT_ROUTINE типом отменяет выбор устройства ieee 1284.3 или устройства ieee 1284, подключенного к параллельному порту.
PPARALLEL_FREE_ROUTINE

Подпрограмма обратного вызова с PPARALLEL_FREE_ROUTINE типом освобождает параллельный порт. Эта подпрограмма предоставляется системным драйвером-функцией для параллельных портов.
PPARALLEL_IEEE_FWD_TO_REV

Подпрограмма обратного вызова с типом PPARALLEL_IEEE_FWD_TO_REV изменяет режим передачи с прямого на обратный. Эта процедура предоставляется системным драйвером шины для параллельных портов.
PPARALLEL_IEEE_REV_TO_FWD

Подпрограмма обратного вызова с типом PPARALLEL_IEEE_REV_TO_FWD изменяет режим передачи с обратного на переадресацию. Эта процедура предоставляется системным драйвером шины для параллельных портов.
PPARALLEL_QUERY_WAITERS_ROUTINE

Подпрограмма обратного вызова с PPARALLEL_QUERY_WAITERS_ROUTINE типом возвращает количество IOCTL_INTERNAL_PARALLEL_PORT_ALLOCATE и IOCTL_INTERNAL_SELECT_DEVICE запросов, помещенных в очередь работы параллельного порта.
PPARALLEL_READ

Подпрограмма обратного вызова с PPARALLEL_READ типом считывает данные с параллельного устройства. Эта процедура предоставляется системным драйвером шины для параллельных портов.
PPARALLEL_SET_CHIP_MODE

Подпрограмма обратного вызова с PPARALLEL_SET_CHIP_MODE типом задает режим работы параллельного порта. Эта подпрограмма предоставляется системным драйвером-функцией для параллельных портов.
PPARALLEL_TRY_ALLOCATE_ROUTINE

Подпрограмма обратного вызова с типом PPARALLEL_TRY_ALLOCATE_ROUTINE (ISR) пытается выделить параллельный порт в IRQL = DIRQL. Эта подпрограмма предоставляется системным драйвером-функцией для параллельных портов.
PPARALLEL_TRY_SELECT_ROUTINE

Подпрограмма обратного вызова с PPARALLEL_TRY_SELECT_ROUTINE типа выбирает сетевое устройство IEEE 1284.3 или устройство ieee 1284, подключенное к параллельному порту. Эта подпрограмма предоставляется системным драйвером-функцией для параллельных портов.
PPARALLEL_WRITE

PPARALLEL_WRITE типизированный подпрограмма обратного вызова записывает данные на параллельное устройство. Эта процедура предоставляется системным драйвером шины для параллельных портов.
PTERMINATE_IEEE_MODE

Подпрограмма обратного вызова с типом PTERMINATE_IEEE_MODE завершает текущий режим работы IEEE и устанавливает режим, совместимый с IEEE 1284. Эта процедура предоставляется системным драйвером шины для параллельных портов.

Структуры

 
MORE_PARALLEL_PORT_INFORMATION

Структура MORE_PARALLEL_PORT_INFORMATION указывает сведения о системном интерфейсе, поддерживающем работу параллельного порта.
PAR_DEVICE_ID_SIZE_INFORMATION

Структура PAR_DEVICE_ID_SIZE_INFORMATION определяет размер (в байтах) буфера, который может содержать идентификатор устройства IEEE 1284 параллельного устройства и признак конца NULL.
PAR_QUERY_INFORMATION

Структура PAR_QUERY_INFORMATION указывает состояние работы параллельного порта.
PAR_SET_INFORMATION

Структура PAR_SET_INFORMATION указывает начальное рабочее состояние параллельного порта.
PARALLEL_1284_COMMAND

Структура PARALLEL_1284_COMMAND указывает сведения, которые используются клиентом для выбора и отмены выбора сетевого устройства IEEE 1284.3 или конечного устройства IEEE 1284.
PARALLEL_CHIP_MODE

Структура PARALLEL_CHIP_MODE определяет режим работы параллельного порта.
PARALLEL_INTERRUPT_INFORMATION

Структура PARALLEL_INTERRUPT_INFORMATION указывает сведения, которые драйвер режима ядра может использовать в контексте ISR, который драйвер подключается к параллельному порту.
PARALLEL_INTERRUPT_SERVICE_ROUTINE

Структура PARALLEL_INTERRUPT_SERVICE_ROUTINE указывает службы прерываний, которые драйвер режима ядра может подключать к работе параллельного порта.
PARALLEL_PNP_INFORMATION

Структура PARALLEL_PNP_INFORMATION указывает сведения о возможностях параллельного порта.
PARALLEL_PORT_INFORMATION

Структура PARALLEL_PORT_INFORMATION указывает сведения о ресурсах, назначенных параллельному порту, возможностях параллельного порта и указателях на подпрограммы обратного вызова, которые драйвер режима ядра может использовать для работы с параллельным портом.
PARCLASS_INFORMATION

Структура PARCLASS_INFORMATION указывает сведения о параллельном порту, указатели на подпрограммы обратного вызова для работы с параллельным портом и указатели на подпрограммы обратного вызова для чтения и записи на параллельное устройство.
PARCLASS_NEGOTIATION_MASK

Структура PARCLASS_NEGOTIATION_MASK определяет протоколы чтения и записи, выбранные драйвером для параллельного устройства.