Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Frühere Treiber und Treiber auf hoher Ebene, die keine PnP-Geräteentfernungsanforderungen verarbeiten, müssen in ihren Unload-Routinen Ressourcen freigeben, Geräteobjekte löschen und sich aus dem Gerätestapel trennen.
Wenn dies noch nicht geschehen ist, sollte ein älteren Gerätetreiber in seiner Unload-Routine die Unterbrechungen vom Gerät deaktivieren. Andernfalls wird der ISR möglicherweise aufgerufen, um einen Geräteunterbruch zu behandeln, während die Unload-Routine Ressourcen in der Geräteerweiterung freigibt, die der ISR für die Behandlung des Interrupts benötigt. Auch wenn die ISR unter diesen Umständen erfolgreich ausgeführt wird, wird die DpcForIsr- oder CustomDpc-Routine, die die ISR-Warteschlange stellt, und möglicherweise andere Treiberroutinen, die bei IRQL >= DISPATCH_LEVEL ausgeführt werden, vor der Unload-Routine, die wieder die Kontrolle erhält, ausgeführt. Dadurch erhöht sich die Wahrscheinlichkeit, dass die Unload-Routine eine Ressource gelöscht hat, auf die eine andere Treiberroutine verweist. Weitere Informationen finden Sie unter Verwalten von Hardwareprioritäten .
Nach dem Deaktivieren von Unterbrechungen müssen Dateisystem- und Legacytreiber Ressourcen und Objekte freigeben. Ausführliche Informationen finden Sie in den folgenden beiden Abschnitten: