Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The IO_DISCONNECT_INTERRUPT_PARAMETERS structure describes the parameters when unregistering an interrupt-handling routine with IoDisconnectInterruptEx.
Syntax
typedef struct _IO_DISCONNECT_INTERRUPT_PARAMETERS {
  ULONG Version;
  union {
    PVOID                      Generic;
    PKINTERRUPT                InterruptObject;
    PIO_INTERRUPT_MESSAGE_INFO InterruptMessageTable;
  } ConnectionContext;
} IO_DISCONNECT_INTERRUPT_PARAMETERS, *PIO_DISCONNECT_INTERRUPT_PARAMETERS;
Members
Version
Specifies the particular operation to be performed by IoDisconnectInterruptEx. The value for Version depends on the value specified for Parameters->Version when IoConnectInterruptEx registered the interrupt handing routine, as shown in the following table.
| IO_CONNECT_INTERRUPT_PARAMETERS Version value | IO_DISCONNECT_INTERRUPT_PARAMETERS Version value | 
|---|---|
| CONNECT_LINE_BASED | CONNECT_LINE_BASED | 
| CONNECT_MESSAGE_BASED | The value of Version output by IoConnectInterruptEx. | 
| CONNECT_FULLY_SPECIFIED | CONNECT_FULLY_SPECIFIED | 
ConnectionContext
A pointer to the KINTERRUPT or IO_INTERRUPT_MESSAGE_INFO structure that was provided by IoConnectInterruptEx when the interrupt was connected. The value for ConnectionContext depends on the value specified for Parameters->Version when IoConnectInterruptEx registered the interrupt handling routine, as shown in the following table.
| IoConnectInterruptEx Version value | IoDisconnectInterruptEx ConnectionContext value | 
|---|---|
| CONNECT_LINE_BASED | The value stored in LineBased.InterruptObject. | 
| CONNECT_MESSAGE_BASED | The value stored in MessageBased.ConnectionContext. | 
| CONNECT_FULLY_SPECIFIED | The value stored in FullySpecified.InterruptObject. | 
To minimize casting, ConnectionContext is defined as a union. Use ConnectionContext.Generic to specify the value as a PVOID. Use ConnectionContext.InterruptObject and ConnectionContext.InterruptMessageTable to specify the value as a pointer to a KINTERRUPT or IO_INTERRUPT_MESSAGE_INFO structure.
ConnectionContext.Generic
A pointer to a data structure of unspecified type.
ConnectionContext.InterruptObject
A pointer to a KINTERRUPT structure.
ConnectionContext.InterruptMessageTable
A pointer to an IO_INTERRUPT_MESSAGE_INFO structure.
Requirements
| Requirement | Value | 
|---|---|
| Header | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |