다음을 통해 공유


_URB_OS_FEATURE_DESCRIPTOR_REQUEST 구조체(usb.h)

_URB_OS_FEATURE_DESCRIPTOR_REQUEST 구조는 USB 허브 드라이버에서 USB 디바이스 또는 USB 디바이스의 인터페이스에서 Microsoft OS 기능 설명자를 검색하는 데 사용됩니다.

통사론

struct _URB_OS_FEATURE_DESCRIPTOR_REQUEST {
  struct _URB_HEADER   Hdr;
  PVOID                Reserved;
  ULONG                Reserved0;
  ULONG                TransferBufferLength;
  PVOID                TransferBuffer;
  PMDL                 TransferBufferMDL;
  struct _URB          *UrbLink;
  struct _URB_HCD_AREA hca;
  UCHAR                Recipient : 5;
  UCHAR                Reserved1 : 3;
  UCHAR                Reserved2;
  UCHAR                InterfaceNumber;
  UCHAR                MS_PageIndex;
  USHORT               MS_FeatureDescriptorIndex;
  USHORT               Reserved3;
};

회원

Hdr

URB 헤더 정보를 지정하는 _URB_HEADER 구조체에 대한 포인터입니다. hdr.Function URB_FUNCTION_GET_MS_FEATURE_DESCRIPTOR 합니다. Hdr.Lengthsizeof(_URB_OS_FEATURE_DESCRIPTOR_REQUEST)합니다.

Reserved

Reserved0

TransferBufferLength

TransferBuffer 지정되거나 TransferBufferMDL설명된 버퍼의 길이(바이트)를 지정합니다. 호스트 컨트롤러 드라이버는 이 멤버에서 읽은 바이트 수를 반환합니다. 이 함수의 현재 구현은 최대 MS OS 기능 설명자 크기를 4KB로 제한합니다.

TransferBuffer

전송에 대한 상주 버퍼에 대한 포인터이거나 TransferBufferMDLMDL이 제공된 경우 NULL .

TransferBufferMDL

TransferBuffer제공된 경우 상주 버퍼를 설명하거나 NULL MDL에 대한 포인터입니다. 이 MDL은 페이지가 없는 풀에서 할당해야 합니다.

UrbLink

예약. 사용하지 마세요.

hca

Recipient

받는 사람이 USB 디바이스인지 아니면 USB 디바이스의 인터페이스인지를 지정합니다. 다음 값 중 하나를 지정해야 합니다.

  • 0은 USB 디바이스가 요청의 수신자임을 나타냅니다.
  • 1은 USB 인터페이스가 요청의 수신자임을 나타냅니다.
  • 2는 USB 엔드포인트가 요청의 수신자임을 나타냅니다.

Reserved1

Reserved2

InterfaceNumber

Recipient 멤버 값이 1인 경우 요청의 수신자인 인터페이스 번호를 나타냅니다. USB 디바이스가 받는 사람인 경우 0으로 설정해야 합니다.

MS_PageIndex

0으로 설정해야 합니다. 반환할 MS OS 기능 설명자의 64K 페이지의 페이지 인덱스입니다. 현재 구현은 최대 설명자 크기 4K만 지원합니다.

MS_FeatureDescriptorIndex

요청할 MS OS 기능 설명자에 대한 인덱스입니다.

Reserved3

발언

이 구조체의 예약 멤버는 불투명한 것으로 처리되어야 하며 시스템 사용을 위해 예약되어 있어야 합니다.

요구 사항

요구
지원되는 최소 클라이언트 Windows XP 이상 운영 체제에서 사용할 수 있습니다.
헤더 usb.h(Usb.h 포함)

참고 항목

URB

_URB_HEADER