EVT_UDECX_USB_DEVICE_D0_EXIT Rückruffunktion (udecxusbdevice.h)
Die USB-Geräteemulationsklassenerweiterung (UdeCx) ruft diese Rückruffunktion auf, wenn sie eine Anforderung erhält, das virtuelle USB-Gerät in einen Energiesparzustand zu senden.
Syntax
EVT_UDECX_USB_DEVICE_D0_EXIT EvtUdecxUsbDeviceD0Exit;
NTSTATUS EvtUdecxUsbDeviceD0Exit(
[in] WDFDEVICE UdecxWdfDevice,
[in] UDECXUSBDEVICE UdecxUsbDevice,
[in] UDECX_USB_DEVICE_WAKE_SETTING WakeSetting
)
{...}
Parameter
[in] UdecxWdfDevice
Ein Handle für ein Frameworkgeräteobjekt, das den Controller darstellt, an den das USB-Gerät angeschlossen ist. Der Clienttreiber hat dieses Objekt in einem vorherigen Aufruf von UdecxWdfDeviceAddUsbDeviceEmulation initialisiert.
[in] UdecxUsbDevice
Ein Handle für das UDE-Geräteobjekt. Der Clienttreiber hat dieses Objekt in einem vorherigen Aufruf von UdecxUsbDeviceCreate erstellt.
[in] WakeSetting
Ein UDECX_USB_DEVICE_WAKE_SETTING-Wert, der die Remotereaktivierungsfunktion des USB-Geräts angibt.
Rückgabewert
Wenn der Vorgang erfolgreich ist, muss die Rückruffunktion STATUS_SUCCESS oder einen anderen status Wert zurückgeben, für den NT_SUCCESS(status) gleich TRUE ist.
Hinweise
Der Clienttreiber hat die Funktion in einem vorherigen Aufruf von UdecxUsbDeviceInitSetStateChangeCallbacks registriert, indem er einen Funktionszeiger auf seine Implementierung angibt.
In der Rückrufimplementierung wird erwartet, dass der Clienttreiber für das USB-Gerät Schritte ausführt, um das Gerät in einen Energiesparzustand zu senden. In dieser Funktion kann der Treiber seine Aktivierung über einen Low-Link-Power-Zustand, eine Angehaltene Funktion oder beides initiieren. Dazu muss der Treiber für ein USB 2.0-Gerät die UdecxUsbDeviceSignalWake-Methode aufrufen. USB 3.0-Geräte müssen UdecxUsbDeviceSignalFunctionWake verwenden.
Die Energieanforderung kann asynchron abgeschlossen werden, indem STATUS_PENDING zurückgegeben und später UdecxUsbDeviceLinkPowerExitComplete mit dem eigentlichen Abschlusscode aufgerufen wird.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 10 |
Unterstützte Mindestversion (Server) | Windows Server 2016 |
Zielplattform | Windows |
KMDF-Mindestversion | 1.15 |
Kopfzeile | udecxusbdevice.h (include Udecx.h) |
IRQL | <=DISPATCH_LEVEL |
Weitere Informationen
Architektur: USB-Geräteemulation (UDE)