Condividi tramite


Funzione IoDisconnectInterrupt (wdm.h)

La routine IoDisconnectInterrupt rilascia un set di oggetti di interruzione del 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 KINTERRUPT . Il chiamante ha ottenuto questo puntatore dalla chiamata IoConnectInterrupt che in precedenza ha connesso l'interruzione o l'interruzione.

Valore restituito

nessuno

Osservazioni

Il driver deve configurare il dispositivo per generare interruzioni solo quando questi interruzioni sono connessi. Non è possibile impedire a un dispositivo di emettere interruzioni quando gli interruzioni vengono disconnessi potrebbe causare l'instabilità del sistema. Ad esempio, se un dispositivo condivide una linea di interruzione attivata a livello con altri dispositivi e il dispositivo genera una richiesta di interruzione quando gli interruzioni del dispositivo vengono disconnessi, gli altri dispositivi sulla riga non riconosceranno l'interruzione e l'interruzione continuerà a generare. Prima di chiamare IoDisconnectInterrupt, il driver deve configurare il dispositivo per interrompere l'emissione di interruzioni. Dopo aver chiamato IoConnectInterrupt, il driver deve configurare il dispositivo per avviare l'emissione di interruzioni.

Se il driver archivia il puntatore agli oggetti di interruzione nell'estensione del dispositivo dell'oggetto dispositivo o nell'estensione del controller dell'oggetto controller, deve chiamare IoDisconnectInterrupt prima di chiama IoDeleteDevice o IoDeleteController.

Requisiti

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 HwStorPortProhibitedDDDIs(storport), IrqlIoPassive4(wdm), PowerIrpDDis(wdm)

Vedi anche

IoConnectInterrupt

IoDeleteController

IoDeleteDevice

KINTERRUPT