PPARALLEL_TRY_ALLOCATE_ROUTINE 콜백 함수(parallel.h)
PPARALLEL_TRY_ALLOCATE_ROUTINE-typed(ISR) 콜백 루틴은 IRQL = DIRQL에서 병렬 포트를 할당하려고 시도합니다. 병렬 포트에 대한 시스템 제공 함수 드라이버는 이 루틴을 제공합니다.
통사론
PPARALLEL_TRY_ALLOCATE_ROUTINE PparallelTryAllocateRoutine;
BOOLEAN PparallelTryAllocateRoutine(
[in] PVOID TryAllocateContext
)
{...}
매개 변수
[in] TryAllocateContext
병렬 포트를 나타내는 기능 디바이스 개체의 디바이스 확장에 대한 포인터입니다.
반환 값
반환 코드 | 묘사 |
---|---|
|
병렬 포트가 할당되었습니다. |
|
병렬 포트가 할당되지 않았습니다. |
발언
커널 모드 드라이버는 PARALLEL_INTERRUPT_INFORMATION 구조를 반환하는 IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT사용하여 인터럽트 서비스 루틴을 연결합니다. 이 구조에는 ISR(시스템 제공 PPARALLEL_TRY_ALLOCATE_ROUTINE) 콜백에 대한 포인터인 TryAllocatePortAtInterruptLevel 멤버가 포함됩니다.
ISR(PPARALLEL_TRY_ALLOCATE_ROUTINE) 콜백이 차단되지 않고 할당 요청을 큐에 대기하지 않고 즉시 반환됩니다.
드라이버는 드라이버 제공 ISR과 함께 ISR(PPARALLEL_TRY_ALLOCATE_ROUTINE) 콜백을 사용합니다. 드라이버의 ISR이 호출될 때 드라이버에 할당된 병렬 포트가 없는 경우 드라이버는 이 콜백을 사용할 수 있습니다.
ISR에서 병렬 포트를 할당하는 방법에 대한 자세한 내용은 인터럽트 서비스 루틴을 ParallelPort연결하는 방법을 참조하세요.
요구 사항
요구 | 값 |
---|---|
대상 플랫폼 | 바탕 화면 |
헤더 | parallel.h(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