SRB_NOTIFY_IDLE_STATE
Der Klassentreiber sendet diese Anforderung unmittelbar vor dem Senden der ersten offenen oder letzten Schließen-Anforderung an den Minidriver. Der Minidriver kann SRB_NOTIFY_IDLE_STATE als Benachrichtigung verwenden, um von usb-selektiver Aussetzung zu reaktivieren.
Rückgabewert
Diese Anforderung ist nur ein Benachrichtigungspaket. Alle vom Minidriver bereitgestellten Rückgabewerte werden ignoriert.
Hinweise
SRB_NOTIFY_IDLE_STATE wird in Microsoft Windows XP mit Service Pack 2 (SP2) und höher, aber nicht in Microsoft Windows Server 2003 gesendet.
SRB_NOTIFY_IDLE_STATE behebt das Problem beim selektiven Anhalten von USB, das im Streamklassentreiber (Stream.sys) in Windows XP mit SP1 vorhanden ist. Sie können SRB_NOTIFY_IDLE_STATE verwenden, um das selektive Anhalten innerhalb einzelner instance Minidriver basierend auf Streamklasse und USBCAMD2 zu unterstützen.
In Windows XP und früheren Versionen ist SRB_NOTIFY_IDLE_STATE nicht vorhanden. Für Windows XP und frühere Versionen empfängt der Minitreiber SRB_GET_DEVICE_PROPERTY , um aus einem Leerlaufzustand zu reaktivieren. Der Minitreiber ruft dann PoRequestPowerIrp auf, um den Gerätezustand in D0 zu ändern.
In Windows XP mit SP1 und Windows Server 2003 wird in diesem Fall SRB_GET_DEVICE_PROPERTY nicht gesendet. Wenn Sie Stream.sys mit diesen Betriebssystemen verwenden, befolgen Sie die Anweisungen im zuvor erwähnten Knowledge Base-Artikel.
Beim Öffnen der ersten instance des Geräts sendet der Klassentreiber SRB_NOTIFY_IDLE_STATE unmittelbar vor dem Senden SRB_OPEN_DEVICE_INSTANCE.
Beim Schließen der letzten instance des Geräts sendet der Klassentreiber SRB_NOTIFY_IDLE_STATE unmittelbar vor dem Senden der Anforderung, dass das Gerät in den Zustand D3 übergehen soll.
Wenn der Streamklassentreiber eine SRB_NOTIFY_IDLE_STATE-Anforderung sendet, erhält der Minidriver einen Anruf an StrMiniReceiveDevicePacket.