USBD_BuildRegisterCompositeDevice 루틴은 USB 다기능 디바이스(복합 드라이버)의 드라이버에 의해 호출되어 USB 드라이버 스택에 드라이버를 등록하는 데 필요한 정보를 사용하여 REGISTER_COMPOSITE_DEVICE 구조를 초기화합니다.
루틴은 Microsoft에서 제공하는 복합 드라이버인 Usbccgp.sys대체하는 드라이버에 의해 호출됩니다.
통사론
VOID USBD_BuildRegisterCompositeDevice(
[in] USBD_HANDLE USBDHandle,
[in] COMPOSITE_DEVICE_CAPABILITIES CapabilityFlags,
[in] ULONG FunctionCount,
[out] PREGISTER_COMPOSITE_DEVICE RegisterCompositeDevice
);
매개 변수
[in] USBDHandle
USBD_CreateHandle 루틴에 대한 이전 호출에서 검색된 USBD 핸들입니다.
[in] CapabilityFlags
복합 드라이버에서 지원하는 기능을 나타내는 호출자 할당 COMPOSITE_DEVICE_CAPABILITIES 구조체입니다. 예를 들어 복합 드라이버가 함수 일시 중단을 지원함을 나타내려면 COMPOSITE_DEVICE_CAPABILITIESCapabilityFunctionSuspend 멤버를 1로 설정합니다.
[in] FunctionCount
부모 드라이버에서 만들 실제 디바이스 개체(PDO)의 수입니다. FunctionCount 값은 255를 초과할 수 없습니다.
[out] RegisterCompositeDevice
호출자가 할당한 REGISTER_COMPOSITE_DEVICE 구조체에 대한 포인터입니다. 완료되면 구조체가 지정된 등록 정보로 채워집니다. 복합 드라이버를 등록하려면 IOCTL_INTERNAL_USB_REGISTER_COMPOSITE_DEVICE I/O 요청을 보내고 채워진 구조를 전달합니다.
반환 값
없음
요구 사항
| 요구 | 값 |
|---|---|
| 지원되는 최소 클라이언트 | Windows 8용 WDK가 필요합니다. Windows Vista 이상 버전의 Windows 운영 체제를 대상으로 합니다. |
| 대상 플랫폼 | 바탕 화면 |
| 헤더 | usbdlib.h |
| 라이브러리 | Usbdex.lib |
| IRQL | < = DISPATCH_LEVEL |