USBD_BuildRegisterCompositeDevice関数 (usbdlib.h)
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 オペレーティング システムを対象としています。 |
対象プラットフォーム | デスクトップ |
Header | usbdlib.h |
Library | Usbdex.lib |
IRQL | < = DISPATCH_LEVEL |