删除 ISR

驱动程序可以通过调用 IoDisconnectInterruptEx 删除注册到 IoConnectInterruptEx 的 ISRIoDisconectInterruptEx 采用单个 Parameters 参数,该参数是指向 IO_DISCONNECT_INTERRUPT_PARAMETERS 结构的指针。 用于结构成员的值取决于用于注册 ISR 的版本。

驱动程序在注册 ISR 时必须保存某些信息,以便以后将其删除。 对于CONNECT_LINE_BASED和CONNECT_FULLY_SPECIFIED版本,驱动程序必须保存IO_CONNECT_INTERRUPT_PARAMETERS的 LineBased.InterruptObjectFullySpecified.InterruptObject 成员中提供的值。 对于 CONNECT_MESSAGE_BASED 版本,驱动程序必须保存 IO_CONNECT_INTERRUPT_PARAMETERS的 VersionMessageBased.ConnectionContext 成员中提供的值。