IoDisconnectInterrupt 函数 (wdm.h)
IoDisconnectInterrupt 例程会在暂停或删除设备或卸载驱动程序时释放设备驱动程序的中断对象集。
void IoDisconnectInterrupt(
[in] PKINTERRUPT InterruptObject
);
[in] InterruptObject
指向 KINTERRUPT 结构的指针。 调用方从 IoConnectInterrupt 之前连接中断或中断的调用中获取此指针。
没有
驱动程序应将设备配置为仅在连接这些中断时发出中断。 当中断断开连接时,无法阻止设备发出中断可能会导致系统不稳定。 例如,如果设备与其他设备共享级别触发的中断线,并且设备在断开设备中断时发出中断请求,则线路上的其他设备不会确认中断,中断将继续触发。 在调用 IoDisconnectInterrupt之前,驱动程序应将设备配置为停止发出中断。 调用 IoConnectInterrupt后,驱动程序应将设备配置为开始发出中断。
如果驱动程序在其设备对象的设备扩展或控制器扩展中存储了指向其中断对象的指针,则必须在调用 ioDeleteDevice ioDeleteDevice 或 IoDeleteController之前调用 IoDisconnectInterrupt。
要求 | 价值 |
---|---|
最低支持的客户端 | 从 Windows 2000 开始可用。 |
目标平台 | 普遍 |
标头 | wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h) |
库 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
DDI 符合性规则 | HwStorPortProhibitedDIS(storport)、IrqlIoPassive4(wdm)、PowerIrpDDis(wdm) |