ioDisconnectInterrupt 函数 (wdm.h)

IoDisconnectInterrupt 例程在暂停或删除设备或卸载驱动程序时释放设备驱动程序的中断对象集, () 。

语法

void IoDisconnectInterrupt(
  [in] PKINTERRUPT InterruptObject
);

参数

[in] InterruptObject

指向 KINTERRUPT 结构的指针。 调用方从之前连接中断或中断的 IoConnectInterrupt 调用获取此指针。

返回值

备注

驱动程序应将设备配置为仅在连接这些中断时发出中断。 如果无法阻止设备在中断断开连接时发出中断,可能会导致系统不稳定。 例如,如果设备与其他设备共享一个级别触发的中断线,并且设备在断开设备的中断时发出中断请求,则线路上的其他设备不会确认中断,并且中断将继续触发。 在调用 IoDisconnectInterrupt 之前,驱动程序应将设备配置为停止发出中断。 调用 IoConnectInterrupt 后,驱动程序应将设备配置为开始发出中断。

如果驱动程序将指向其中断对象的指针 () 存储在其设备对象的设备扩展或其控制器对象的控制器扩展中,则必须在调用 IoDeleteDeviceIoDeleteController 之前调用 IoDisconnectInterrupt。

要求

要求
最低受支持的客户端 从 Windows 2000 开始可用。
目标平台 通用
标头 wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI 符合性规则 HwStorPortProhibitedDDI (storport) IrqlIoPassive4 (wdm) PowerIrpDDis (wdm)

另请参阅

IoConnectInterrupt

IoDeleteController

IoDeleteDevice

KINTERRUPT