Herunterschalten eines Geräts

Sofern ein Gerät nicht für das Reaktivieren aktiviert ist, schalten seine Treiber es aus, wenn das System heruntergefahren wird. Geräte müssen immer ausgeschaltet werden, wenn sie entfernt oder entfernt werden.

Wenn ein Gerät entfernt wird, sendet der Plug & Play-Manager eine IRP_MN_REMOVE_DEVICE-Anforderung an den Gerätestapel. Als Reaktion auf diese IRP sollten die Treiber für das Gerät sicherstellen, dass das Gerät heruntergefahren wird. Das Herunterschalten des Geräts ist ein impliziter Bestandteil der Entfernungsbehandlung. Der Besitzer der Geräteenergierichtlinie muss keine IRP_MN_SET_POWER für PowerDeviceD3 senden.

Wenn Treiber die IRP_MN_REMOVE_DEVICE-Anforderung verarbeiten, warten sie auf den Abschluss der ausstehenden E/A, führen alle erforderlichen Entfernungsverarbeitungen durch, rufen PoSetPowerState auf, um den Power Manager zu benachrichtigen, dass sich das Gerät im Zustand D3 befindet, und löschen die Geräteobjekte, die sie für dieses Gerät erstellt haben. In der Regel schaltet der Bustreiber die Stromversorgung für das Gerät aus.

Wenn ein Gerät unerwartet aus einem Windows 2000 oder höher-Betriebssystem entfernt wird, sendet der Plug & Play-Manager eine IRP_MN_SURPRISE_REMOVAL-Anforderung an den Anfang des entsprechenden Gerätestapels. Als Reaktion auf diese IRP sollten die Treiber für das Gerät eine Verarbeitung der Überraschungsentfernung durchführen, wie unter Handling an IRP_MN_SURPRISE_REMOVAL Request beschrieben.

Beim Herunterfahren des Systems sendet der Power Manager eine IRP_MN_SET_POWER für einen Systemstromzustand (entweder S4 oder S5). Wenn der Besitzer der Energierichtlinie dieses IRP empfängt, sollte er eine IRP_MN_SET_POWER für PowerDeviceD3 senden, damit niedrigere Treiber ihre Arbeit beenden und das Gerät ausschalten können.

Ein Treiber kann optional eine Leerlauferkennung für sein Gerät durchführen oder anfordern, dass der Power Manager die Leerlauferkennung durchführt, damit das Gerät ausgeschaltet werden kann, wenn es nicht verwendet wird. Weitere Informationen finden Sie unter Erkennen eines im Leerlauf befindlichen Geräts.