Freigeben über


PPARALLEL_TRY_ALLOCATE_ROUTINE Rückruffunktion (parallel.h)

Die PPARALLEL_TRY_ALLOCATE_ROUTINE-typed (ISR)-Rückrufroutine versucht, einen parallelen Port bei IRQL = DIRQL zuzuweisen. Der vom System bereitgestellte Funktionstreiber für parallele Ports liefert diese Routine.

Syntax

PPARALLEL_TRY_ALLOCATE_ROUTINE PparallelTryAllocateRoutine;

BOOLEAN PparallelTryAllocateRoutine(
  [in] PVOID TryAllocateContext
)
{...}

Parameter

[in] TryAllocateContext

Zeiger auf die Geräteerweiterung eines funktionalen Geräteobjekts, das einen parallelen Port darstellt.

Rückgabewert

Rückgabecode Beschreibung
TRUE-
Der parallele Port wurde zugewiesen.
FALSE-
Der parallele Port wurde nicht zugewiesen.

Bemerkungen

Ein Kernelmodustreiber verbindet eine Interruptdienstroutine mithilfe einer IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT, die eine PARALLEL_INTERRUPT_INFORMATION Struktur zurückgibt. Diese Struktur enthält den TryAllocatePortAtInterruptLevel Member, der ein Zeiger auf den vom System bereitgestellten PPARALLEL_TRY_ALLOCATE_ROUTINE (ISR)-Rückruf ist.

Der PPARALLEL_TRY_ALLOCATE_ROUTINE (ISR)-Rückruf ist nicht blockiert, stellt keine Zuweisungsanforderung in die Warteschlange und gibt sofort zurück.

Ein Treiber verwendet den PPARALLEL_TRY_ALLOCATE_ROUTINE (ISR)-Rückruf in Verbindung mit einem vom Treiber bereitgestellten ISR. Wenn der Treiber keinen parallelen Port zugewiesen hat, wenn der ISR des Treibers aufgerufen wird, kann der Treiber diesen Rückruf verwenden.

Weitere Informationen zum Zuordnen eines parallelen Ports in einem ISR finden Sie unter Verbinden einer Interrupt-Dienstroutine mit einem ParallelPort-.

Hinweis Der PPARALLEL_TRY_ALLOCATE_ROUTINE (ISR)-Rückruf ist nicht getestet. Microsoft empfiehlt die Verwendung einer vom Client bereitgestellten Interruptroutine nicht. Die Verwendung von Unterbrechungen kann zu Systeminstabilität führen. Standardmäßig ist die IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT Anforderung deaktiviert.
 

Anforderungen

Anforderung Wert
Zielplattform- Desktop
Header- parallel.h (include Parallel.h)
IRQL- DIRQL

Siehe auch

IOCTL_INTERNAL_PARALLEL_DISCONNECT_INTERRUPT

IOCTL_INTERNAL_GET_PARALLEL_PORT_INFO

IOCTL_INTERNAL_PARALLEL_PORT_ALLOCATE

IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT

IOCTL_INTERNAL_PARALLEL_PORT_FREE

PPARALLEL_FREE_ROUTINE (ISR)

PARALLEL_INTERRUPT_INFORMATION