Condividi tramite


Operazioni intermedie di scollegamento del driver

Un driver intermedio annulla l'associazione da un driver miniport sottostante chiamando NdisCloseAdapterEx dalla sua funzione ProtocolUnbindAdapterEx. NDIS chiama ProtocolUnbindAdapterEx se l'adattatore miniport sottostante non è più disponibile.

La funzione ProtocolUnbindAdapterEx di un driver intermedio potrebbe essere chiamata quando il driver ha una chiamata in sospeso a NdisIMInitializeDeviceInstanceEx. Questa situazione si verifica quando NDIS non ha ancora chiamato MiniportInitializeEx per inizializzare i miniport virtuali corrispondenti. In questo caso, il driver intermedio deve chiamare NdisIMCancelInitializeDeviceInstance per tentare di annullare l'inizializzazione di questi miniport virtuali.

Se l'associazione chiusa viene mappata a un dispositivo esportato dal driver intermedio e se il dispositivo è stato inizializzato chiamando NdisIMInitializeDeviceInstanceEx, il driver intermedio può chiamare NdisIMDeInitializeDeviceInstance per chiudere il dispositivo. Il risultato è che il miniport virtuale del driver intermedio non è più disponibile per gli invii o le richieste effettuate da driver di livello superiore.

Se un driver intermedio NDIS chiama la funzione NdisIMDeInitializeDeviceInstance , NDIS chiama la funzione MiniportHaltEx per il miniport virtuale interessato. Per informazioni sulla gestione dell'operazione di interruzione per miniport virtuali, vedere Interrompere un miniport virtuale.

Dopo che un driver intermedio chiama NdisCloseAdapterEx, dovrebbe rifiutare qualsiasi richiesta di invio per tale connessione con uno stato di errore appropriato.

Per ulteriori informazioni sulle operazioni di disaccoppiamento intermedio dei driver, vedere Disaccoppiamento da un Adattatore (Unbinding from an Adapter).