функция обратного вызова PPARALLEL_TRY_ALLOCATE_ROUTINE (parallel.h)
Подпрограмма обратного вызова PPARALLEL_TRY_ALLOCATE_ROUTINEтипа (ISR) пытается выделить параллельный порт в IRQL = DIRQL. Драйвер функции, предоставляемый системой для параллельных портов, предоставляет эту подпрограмму.
Синтаксис
PPARALLEL_TRY_ALLOCATE_ROUTINE PparallelTryAllocateRoutine;
BOOLEAN PparallelTryAllocateRoutine(
[in] PVOID TryAllocateContext
)
{...}
Параметры
[in] TryAllocateContext
Указатель на расширение устройства функционального объекта устройства, представляющего параллельный порт.
Возвращаемое значение
Возвращаемый код | Описание |
---|---|
|
Был выделен параллельный порт. |
|
Параллельный порт не был выделен. |
Замечания
Драйвер режима ядра подключает подпрограмму службы прерываний с помощью IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT, которая возвращает структуру PARALLEL_INTERRUPT_INFORMATION. Эта структура включает элемент TryAllocatePortAtInterruptLevel, который является указателем на обратный вызов, предоставленный системой PPARALLEL_TRY_ALLOCATE_ROUTINE (ISR).
Обратный вызов PPARALLEL_TRY_ALLOCATE_ROUTINE (ISR) не блокируется, не помещается в очередь запроса выделения и возвращается немедленно.
Драйвер использует обратный вызов PPARALLEL_TRY_ALLOCATE_ROUTINE (ISR) вместе с предоставленным драйвером ISR. Если драйвер не имеет параллельного порта, выделенного при вызове ISR драйвера, драйвер может использовать этот обратный вызов.
Дополнительные сведения о выделении параллельного порта в ISR см. в подключении подпрограммы службы прерываний кParallelPort.
Требования
Требование | Ценность |
---|---|
целевая платформа | Настольный |
заголовка | parallel.h (include Parallel.h) |
IRQL | DIRQL |
См. также
IOCTL_INTERNAL_PARALLEL_DISCONNECT_INTERRUPT
IOCTL_INTERNAL_GET_PARALLEL_PORT_INFO
IOCTL_INTERNAL_PARALLEL_PORT_ALLOCATE
IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT