Поделиться через


функция обратного вызова PPARALLEL_DESELECT_ROUTINE (parallel.h)

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

Синтаксис

PPARALLEL_DESELECT_ROUTINE PparallelDeselectRoutine;

NTSTATUS PparallelDeselectRoutine(
  [in] PVOID DeselectContext,
  [in] PVOID DeselectCommand
)
{...}

Параметры

[in] DeselectContext

Указатель на расширение устройства функционального объекта устройства (FDO), представляющего параллельный порт.

[in] DeselectCommand

Указатель на структуру PARALLEL_1284_COMMAND. Вызывающий объект задает следующие элементы:

ID

Указывает идентификатор устройства 1284.3 (ноль или 1).

CommandFlags

Указывает побитовое ИЛИ, равное нулю или большему из следующих флагов:

Значение Описание
PAR_END_OF_CHAIN_DEVICE Указывает устройство конца цепочки.
PAR_HAVE_PORT_KEEP_PORT Указывает, что порт должен оставаться выделенным.

Возвращаемое значение

Код возврата Описание
STATUS_SUCCESS
Устройство было отменено.
STATUS_INVALID_PARAMETER
Указанный идентификатор устройства недопустим.
STATUS_UNSUCCESSFUL
Системный драйвер функции для параллельных портов не может отменить выбор устройства.

Комментарии

Чтобы получить указатель на системный PPARALLEL_DESELECT_ROUTINE обратный вызов, драйвер режима ядра использует запрос IOCTL_INTERNAL_GET_PARALLEL_PNP_INFO , который возвращает структуру PARALLEL_PNP_INFORMATION . Элемент DeselectDevice структуры PARALLEL_PNP_INFORMATION является указателем на этот обратный вызов.

Драйвер режима ядра может использовать запрос IOCTL_INTERNAL_DESELECT_DEVICE или обратный вызов PPARALLEL_CLEAR_CHIP_MODE , чтобы отменить выбор устройства в параллельном порте, представленном параллельным портом. Чтобы отменить выбор устройства, вызывающей объекту должен быть выделен параллельный порт. Если вызывающий объект не устанавливает флаг PAR_HAVE_PORT_KEEP_PORT, предоставленный системой драйвер функции для параллельных портов освобождает параллельный порт после отмены выбора устройства.

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

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть parallel.h (включая Parallel.h)
IRQL <=DISPATCH_LEVEL

См. также раздел

IOCTL_INTERNAL_SELECT_DEVICE

PPARALLEL_TRY_SELECT_ROUTINE

IOCTL_INTERNAL_DESELECT_DEVICE

PARALLEL_PNP_INFORMATION