_URB_CONTROL_FEATURE_REQUEST-Struktur (usb.h)

Die _URB_CONTROL_FEATURE_REQUEST-Struktur wird von USB-Clienttreibern verwendet, um Features auf einem Gerät, einer Schnittstelle oder einem Endpunkt festzulegen oder zu löschen.

Syntax

struct _URB_CONTROL_FEATURE_REQUEST {
  struct _URB_HEADER   Hdr;
  PVOID                Reserved;
  ULONG                Reserved2;
  ULONG                Reserved3;
  PVOID                Reserved4;
  PMDL                 Reserved5;
  struct _URB          *UrbLink;
  struct _URB_HCD_AREA hca;
  USHORT               Reserved0;
  USHORT               FeatureSelector;
  USHORT               Index;
  USHORT               Reserved1;
};

Member

Hdr

Zeiger auf eine _URB_HEADER-Struktur , die die URB-Headerinformationen angibt. Hdr.Function gibt entweder einen Set- oder einen Clear-Feature-Vorgang an, der auf einem Gerät, einer Schnittstelle, einem Endpunkt oder einer anderen nicht standardmäßigen Komponente ausgeführt werden soll. Hdr.Function muss über einen der folgenden Werte verfügen:

Hdr.Length muss gleich sizeof(_URB_CONTROL_FEATURE_REQUEST)sein.

Reserved

Reserviert. Darf nicht verwendet werden.

Reserved2

Reserviert. Darf nicht verwendet werden.

Reserved3

Reserviert. Darf nicht verwendet werden.

Reserved4

Reserviert. Darf nicht verwendet werden.

Reserved5

Reserviert. Darf nicht verwendet werden.

UrbLink

Reserviert. Darf nicht verwendet werden.

hca

Reserviert. Darf nicht verwendet werden.

Reserved0

Reserviert. Darf nicht verwendet werden.

FeatureSelector

Gibt den usb-definierten Featurecode an, der gelöscht oder festgelegt werden soll. Die Verwendung eines ungültigen, nicht festgelegten oder nicht gelöschten Featurecodes führt dazu, dass das Ziel angehalten wird. Der Bustreiber kopiert den Wert im FeatureSelector-Element in das Feld wValue des Setuppakets.

Index

Gibt den gerätedefinierten Index an, der von einer erfolgreichen Konfigurationsanforderung zurückgegeben wird, wenn die Anforderung für einen Endpunkt oder eine Schnittstelle gilt. Andernfalls muss der Index null sein. Der Bustreiber kopiert den Wert im Indexelement in das Feld wIndex des Setuppakets.

Reserved1

Reserviert. Darf nicht verwendet werden.

Hinweise

Treiber können die UsbBuildFeatureRequest-Dienstroutine verwenden, um diese URB zu formatieren.

Die reservierten Member dieser Struktur müssen als undurchsichtig behandelt werden und sind für die Systemverwendung reserviert.

Wenn ein Treiber ein USB-Gerät für die Remotereaktivierung mit einer IRP_MN_WAIT_WAKE-Anforderung ausrichtet, richtet der USB-Bustreiber automatisch die Remotereaktivierungsfunktion auf dem Gerät ein. Eine Steuerelementfunktions-URB ist nicht erforderlich.

Wenn ein Treiber eine URB mit einem Funktionstyp von URB_FUNCTION_SYNC_RESET_PIPE_AND_CLEAR_STALL an eine Pipe ausgibt, löscht der Bustreiber automatisch die Endpunkt-Verzögerungsfunktion der Pipe. Der Treiber muss keine Steuerelementfeature-URB an die Pipe senden, um das Endpunkt-Stillstand zu löschen.

Anforderungen

Anforderung Wert
Header usb.h (usb.h einschließen)

Weitere Informationen

URB

USB-Strukturen

_URB_HEADER