IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT IOCTL (parallel.h)
IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT要求會將選擇性中斷服務例程和選擇性延遲的埠檢查例程連線到平行埠。 只有內核模式驅動程式可以使用此要求。
線上中斷要求會傳回驅動程式可在驅動程式特定ISR內容中使用的資訊。 此資訊包含中斷物件的指標,以及回呼例程的指標,這些例程會配置並釋放 IRQL = DIRQL 的平行埠。
主要程序代碼
IRP_MJ_INTERNAL_DEVICE_CONTROL
輸入緩衝區
AssociatedIrp.SystemBuffer 成員指向用戶端配置給輸入中斷服務資訊的PARALLEL_INTERRUPT_SERVICE_ROUTINE結構。 平行埠的系統提供的函式驅動程式會使用相同的記憶體緩衝區,但將它轉換成不同的數據類型來輸出資訊。
輸入緩衝區長度
Parameters.DeviceIoControl.InputBufferLength 成員會設定為PARALLEL_INTERRUPT_SERVICE_ROUTINE結構的大小,以位元組為單位。
輸出緩衝區
AssociatedIrp.SystemBuffer 成員指向平行埠函式驅動程式用來輸出平行中斷資訊的PARALLEL_INTERRUPT_INFORMATION結構。
輸出緩衝區長度
Parameters.DeviceIoControl.OutputBufferLength 成員會設定為PARALLEL_INTERRUPT_INFORMATION結構的大小,以位元組為單位。
狀態區塊
如果要求成功, Information 成員會設定為 PARALLEL_INTERRUPT_INFORMATION 結構的大小,以位元組為單位。 否則, 信息 成員會設定為零。
Status 成員會設定為內部裝置控制要求針對平行埠或下列其中一個值所傳回的一般狀態值:
STATUS_BUFFER_TOO_SMALL
至少符合下列其中一項條件:
Parameters.DeviceIoControl.InputBufferLength 成員的值小於PARALLEL_INTERRUPT_SERVICE_ROUTINE結構的大小,以位元組為單位。
Parameters.DeviceIoControl.OuputBufferLength 成員的值小於PARALLEL_INTERRUPT_INFORMATION結構的大小,以位元組為單位。
規格需求
需求 | 值 |
---|---|
標頭 | parallel.h (包括 Parallel.h) |
另請參閱
PARALLEL_INTERRUPT_SERVICE_ROUTINE