EVT_UDECX_USB_DEVICE_ENDPOINTS_CONFIGURE Rückruffunktion (udecxusbdevice.h)

Die USB-Geräteemulationsklassenerweiterung (UdeCx) ruft diese Rückruffunktion auf, um die Konfiguration zu ändern, indem eine alternative Einstellung ausgewählt, aktuelle Endpunkte deaktiviert oder dynamische Endpunkte hinzugefügt werden.

Syntax

EVT_UDECX_USB_DEVICE_ENDPOINTS_CONFIGURE EvtUdecxUsbDeviceEndpointsConfigure;

void EvtUdecxUsbDeviceEndpointsConfigure(
  [in] UDECXUSBDEVICE UdecxUsbDevice,
  [in] WDFREQUEST Request,
  [in] PUDECX_ENDPOINTS_CONFIGURE_PARAMS Params
)
{...}

Parameter

[in] UdecxUsbDevice

Ein Handle für das UDE-Geräteobjekt. Der Clienttreiber hat dieses Objekt in einem vorherigen Aufruf von UdecxUsbDeviceCreate erstellt.

[in] Request

Ein Handle für ein Frameworkanforderungsobjekt, das die Anforderung darstellt.

[in] Params

Ein Zeiger auf eine UDECX_ENDPOINTS_CONFIGURE_PARAMS-Struktur , die die Konfigurationsoptionen beschreibt.

Rückgabewert

Keine

Bemerkungen

Der Clienttreiber hat diese Rückruffunktion in einem vorherigen Aufruf von UdecxUsbDeviceInitSetStateChangeCallbacks registriert, indem er einen Funktionszeiger auf seine Implementierung angibt.

Die Klassenerweiterung ruft diese Rückruffunktion auf, um den Clienttreiber anzufordern, einen oder mehrere neue Endpunkte in Hardware zu konfigurieren, und/oder informiert den Treiber, wenn mindestens ein vorhandener Endpunkt nicht mehr verwendet wird.

Nach dem Erstellen von Endpunkten muss der Clienttreiber für jeden neuen Endpunkt UdecxUsbEndpointSetWdfIoQueue aufrufen, bevor die Anforderung abgeschlossen wird.

Nach dem Freigeben von Endpunkten sollte der Clienttreiber keine Frameworkwarteschlangenobjekte verwenden, die den Endpunkten zugeordnet sind. Die Klassenerweiterung betrachtet diese Warteschlangen als gelöscht, um zukünftige Anforderungen zu verhindern.

Die Klassenerweiterung kann auch einen neuen Konfigurationswert oder eine alternative Einstellung über diesen Rückruf anfordern.

Dieser Aufruf ist asynchron. Der Clienttreiber muss die Vervollständigung mit status signalisieren, indem er die von der Klassenerweiterung übergebene Anforderung abschließt.

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)

UdecxUsbEndpointSetWdfIoQueue

Schreiben eines UDE-Clienttreibers