IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS 結構 (wdm.h)
IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS結構包含已註冊的中斷服務例程的連接內容, (ISR) 連線到 IoConnectInterruptEx 例程的先前呼叫中斷或中斷。
語法
typedef struct _IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS {
ULONG Version;
union {
PVOID Generic;
PKINTERRUPT InterruptObject;
PIO_INTERRUPT_MESSAGE_INFO InterruptMessageTable;
} ConnectionContext;
} IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS, *PIO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS;
成員
Version
這個結構所描述的中斷連線類型。 此成員必須符合從連接中斷之 IoConnectInterruptEx 呼叫取得的呼叫端連線類型。 以下是此成員的有效值:
- CONNECT_FULLY_SPECIFIED
- CONNECT_LINE_BASED
- CONNECT_MESSAGE_BASED
- CONNECT_FULLY_SPECIFIED_GROUP
ConnectionContext
聯集,其中包含與中斷相關聯的連接內容。 每個等位成員都是特定類型的連接內容指標。 如果 Version = CONNECT_MESSAGE_BASED,則此聯集的 InterruptMessageTable 成員包含 IO_INTERRUPT_MESSAGE_INFO 結構的指標。 對於所有其他 Version 值,這個聯集的 InterruptObject 成員包含 KINTERRUPT 結構的指標。 使用此等位的 泛型 成員,將連接內容指標視為 PVOID 值 (,並避免) 轉換。
如需詳細資訊,請參閱<備註>。
ConnectionContext.Generic
線上內容的 PVOID 指標。
ConnectionContext.InterruptObject
KINTERRUPT 類型的連接內容的指標。
ConnectionContext.InterruptMessageTable
類型 IO_INTERRUPT_MESSAGE_INFO之連接內容的指標。
備註
這個結構是以參數的形式提供給 IoReportInterruptActive 和 IoReportInterruptInactive 例程。
Version 成員表示 ConnectionContext 成員中指定的連接內容類型。 將此成員設定為從連接中斷之 IoConnectInterruptEx 呼叫取得的參數->版本值。
如果從 IoConnectInterruptEx 取得的參數版本>值CONNECT_FULLY_SPECIFIED或CONNECT_FULLY_SPECIFIED_GROUP,請將 IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS 結構的 ConnectionContext.InterruptObject 成員設定為 * (Parameters-FullySpecified.InterruptObject >) 從 IoConnectInterruptEx 取得的指針值。
如果從 IoConnectInterruptEx 取得的參數版本>值CONNECT_MESSAGE_BASED,請將 IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS 結構的 ConnectionContext.InterruptMessageTable 成員設定為 * (Parameters-MessageBased.ConnectionContext.InterruptMessageTable>) 從 IoConnectInterruptEx 取得的指標值。
如果從 IoConnectInterruptEx 取得的 Parameters-Version> 值CONNECT_LINE_BASED,但呼叫端一開始將 Parameters-Version> 設定為 CONNECT_MESSAGE_BASED,請將 IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS 結構的 ConnectionContext.InterruptObject 成員設定為從取得的 * ( Parameters-MessageBased.ConnectionContext.InterruptObject >) 指標值IoConnectInterruptEx。
如果從 IoConnectInterruptEx 取得的參數版本>值CONNECT_LINE_BASED,而呼叫端一開始將 Parameters-Version> 設定為 CONNECT_LINE_BASED,請將 IO_REPORT_INTERRUPT_ACTIVE_STATE_PARAMETERS 結構的 ConnectionContext.InterruptObject 成員設定為 * (Parameters-LineBased.InterruptObject >) 從 IoConnectInterruptEx 取得的指標值。
規格需求
需求 | 值 |
---|---|
標頭 | wdm.h (包含 Wdm.h) |