Funzione IoDisconnectInterrupt (wdm.h)
Il IoDisconnectInterrupt routine rilascia il set di oggetti interrupt di un driver di dispositivo quando il dispositivo viene sospeso o rimosso o quando il driver viene scaricato.
Sintassi
void IoDisconnectInterrupt(
[in] PKINTERRUPT InterruptObject
);
Parametri
[in] InterruptObject
Puntatore a una struttura di KINTERRUPT. Il chiamante ha ottenuto questo puntatore dal IoConnectInterrupt chiamata che in precedenza ha connesso l'interrupt o gli interrupt.
Valore restituito
Nessuno
Osservazioni
Il driver deve configurare il dispositivo per l'emissione di interrupt solo quando questi interrupt sono connessi. L'impossibilità di impedire a un dispositivo di emettere interrupt quando gli interrupt vengono disconnessi potrebbe causare instabilità del sistema. Ad esempio, se un dispositivo condivide una linea di interruzione attivata a livello con altri dispositivi e il dispositivo emette una richiesta di interruzione quando gli interrupt del dispositivo vengono disconnessi, gli altri dispositivi sulla riga non riconosceranno l'interrupt e l'interrupt continuerà a essere attivato. Prima di chiamare IoDisconnectInterrupt, il driver deve configurare il dispositivo per interrompere l'emissione di interrupt. Dopo aver chiamato IoConnectInterrupt, il driver deve configurare il dispositivo per avviare l'emissione di interrupt.
Se il driver ha archiviato il puntatore agli oggetti interrupt nell'estensione del dispositivo dell'oggetto dispositivo o nell'estensione controller del relativo oggetto controller, deve chiamare IoDisconnectInterrupt prima di chiamare IoDeleteDevice o IoDeleteController.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Disponibile a partire da Windows 2000. |
piattaforma di destinazione | Universale |
intestazione | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
libreria | NtosKrnl.lib |
dll | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
regole di conformità DDI | HwStorPortProhibitedDDIs(storport), IrqlIoPassive4(wdm), PowerIrpDDis(wdm) |