WinUsb_GetDescriptor 함수(winusb.h)
WinUsb_GetDescriptor 함수는 요청된 설명자를 반환합니다. 동기 작업입니다.
구문
BOOL WinUsb_GetDescriptor(
[in] WINUSB_INTERFACE_HANDLE InterfaceHandle,
[in] UCHAR DescriptorType,
[in] UCHAR Index,
[in] USHORT LanguageID,
[out] PUCHAR Buffer,
[in] ULONG BufferLength,
[out] PULONG LengthTransferred
);
매개 변수
[in] InterfaceHandle
선택한 구성의 인터페이스에 대한 불투명 핸들입니다.
디바이스 또는 구성 설명자를 검색하려면 WinUsb_Initialize 반환된 핸들을 사용합니다.
첫 번째 인터페이스의 인터페이스 설명자를 검색하려면 WinUsb_Initialize 반환된 핸들을 사용합니다.
첫 번째 인터페이스에서 엔드포인트의 엔드포인트 설명자를 검색하려면 WinUsb_Initialize 반환된 핸들을 사용합니다.
다른 모든 인터페이스 및 관련 엔드포인트의 설명자를 검색하려면 WinUsb_GetAssociatedInterface 검색한 대상 인터페이스에 대한 핸들을 사용합니다.
[in] DescriptorType
반환할 설명자의 형식을 지정하는 값입니다. 이 매개 변수는 표준 디바이스 설명자의 bDescriptorType 필드에 해당하며, 해당 값은 유니버설 직렬 버스 사양에 설명되어 있습니다. 이러한 값 중 일부는 _URB_CONTROL_DESCRIPTOR_REQUEST 구조체의 DescriptorType 멤버에 대한 설명에 나열됩니다.
[in] Index
설명자 인덱스입니다. 설명자 인덱스의 설명은 유니버설 직렬 버스 사양(www.usb.org)을 참조하세요.
[in] LanguageID
요청된 설명자가 문자열 설명자인 경우 언어 식별자를 지정하는 값입니다.
[out] Buffer
요청된 설명자를 수신하는 호출자가 할당한 버퍼입니다.
[in] BufferLength
버퍼의 길이(바이트)입니다.
[out] LengthTransferred
Buffer에 복사된 바이트 수입니다.
반환 값
WinUsb_GetDescriptor 작업이 성공하면 TRUE 를 반환합니다. 그렇지 않으면 이 루틴은 FALSE를 반환하고 호출자는 GetLastError를 호출하여 기록된 오류를 검색할 수 있습니다.
GetLastError 는 다음 오류 코드를 반환할 수 있습니다.
반환 코드 | 설명 |
---|---|
|
호출자가 InterfaceHandle 매개 변수에서 NULL을 전달했습니다. |
설명
Buffer 매개 변수가 가리키는 출력 버퍼가 충분히 크면 WinUsb_GetDescriptor 지정된 설명자의 복사본을 출력 버퍼에 만듭니다. 버퍼가 설명자 데이터를 보유할 만큼 크지 않으면 데이터가 복사되지 않습니다. 설명자는 WinUsb_Initialize 호출 중에 생성되거나 디바이스에서 이 시점에서 검색될 수 있습니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 유니버설 |
헤더 | winusb.h(Winusb.h 포함) |
라이브러리 | Winusb.lib |
DLL | Winusb.dll |