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_CAPABILITIES の CapabilityFunctionSuspend メンバーを 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 |