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.
Die ERWEITERUNG der USB-Geräteemulationsklasse (UdeCx) ruft diese Rückruffunktion auf, wenn eine Anforderung zum Ändern des Funktionszustands der angegebenen Schnittstelle des virtuellen USB 3.0-Geräts aufgerufen wird.
Syntax
EVT_UDECX_USB_DEVICE_SET_FUNCTION_SUSPEND_AND_WAKE EvtUdecxUsbDeviceSetFunctionSuspendAndWake;
NTSTATUS EvtUdecxUsbDeviceSetFunctionSuspendAndWake(
[in] WDFDEVICE UdecxWdfDevice,
[in] UDECXUSBDEVICE UdecxUsbDevice,
[in] ULONG Interface,
[in] UDECX_USB_DEVICE_FUNCTION_POWER FunctionPower
)
{...}
Parameter
[in] UdecxWdfDevice
Ein Handle für ein Framework-Geräteobjekt, das den Controller darstellt, an den das USB-Gerät angeschlossen ist. Der Clienttreiber initialisierte dieses Objekt in einem vorherigen Aufruf von UdecxWdfDeviceAddUsbDeviceEmulation.
[in] UdecxUsbDevice
Ein Handle für UDE-Geräteobjekt. Der Clienttreiber hat dieses Objekt in einem vorherigen Aufruf von UdecxUsbDeviceCreateerstellt.
[in] Interface
Dieser Wert ist die bInterfaceNumber- der Schnittstelle, die aufwacht.
[in] FunctionPower
Ein UDECX_USB_DEVICE_FUNCTION_POWER-type-Wert, der angibt, ob die Schnittstelle das Wakesignal an den Hostcontroller anhalten und senden kann.
Rückgabewert
Wenn der Vorgang erfolgreich ist, muss die Rückruffunktion STATUS_SUCCESS oder einen anderen Statuswert zurückgeben, für den NT_SUCCESS(Status) WAHR ist.
Bemerkungen
Der Clienttreiber hat die Funktion in einem vorherigen Aufruf von UdecxUsbDeviceInitSetStateChangeCallbacks registriert, indem ein Funktionszeiger auf seine Implementierung bereitgestellt wird.
In der Rückrufimplementierung wird erwartet, dass der Clienttreiber für das USB-Gerät Schritte ausführt, um in den Arbeitszustand zu gelangen.
Diese Ereignisrückruffunktion gilt für USB 3.0+-Geräte. UdeCx ruft diese Funktion auf, um den Clienttreiber einer Anforderung zu benachrichtigen, um den Leistungsstatus einer bestimmten Funktion zu ändern. Darüber hinaus informiert er den Treiber darüber, ob die Funktion aus dem neuen Zustand aktiviert werden kann.
Die Energieanforderung kann asynchron abgeschlossen werden, indem STATUS_PENDING zurückgegeben und später durch Aufrufen von UdecxUsbDeviceSetFunctionSuspendAndWakeComplete mit dem tatsächlichen Abschlusscode abgeschlossen wird.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 10 |
mindestens unterstützte Server- | Windows Server 2016 |
Zielplattform- | Fenster |
Minimale KMDF-Version | 1.15 |
Header- | udecxusbdevice.h (include Udecx.h) |
IRQL- | <=DISPATCH_LEVEL |