Функция UcxUsbDeviceCreate (ucxusbdevice.h)
Создает объект USB-устройства на указанном контроллере.
Синтаксис
NTSTATUS UcxUsbDeviceCreate(
[in] UCXCONTROLLER Controller,
[out] PUCXUSBDEVICE_INIT *UsbDeviceInit,
[in, optional] PWDF_OBJECT_ATTRIBUTES Attributes,
[out] UCXUSBDEVICE *UsbDevice
);
Параметры
[in] Controller
Дескриптор объекта контроллера. Драйвер клиента извлек дескриптор в предыдущем вызове UcxControllerCreate.
[out] UsbDeviceInit
Указатель на структуру UCXUSBDEVICE_INIT , описывающую различные операции конфигурации для создания объекта USB-устройства. Драйвер задает указатели на функции обратного вызова в этой структуре. Эта структура управляется UCX.
[in, optional] Attributes
Указатель на структуру, выделенную вызывающим объектом WDF_OBJECT_ATTRIBUTES , которая задает атрибуты для объекта USB-устройства.
[out] UsbDevice
Указатель на переменную, которая получает дескриптор нового объекта USB-устройства.
Возвращаемое значение
Метод возвращает STATUS_SUCCESS, если операция выполнена успешно. В противном случае этот метод может вернуть один соответствующий код ошибки NTSTATUS .
Комментарии
Драйвер клиента для хост-контроллера должен вызывать этот метод после вызова WdfDeviceCreate . Родительским объектом нового USB-устройства является родительское устройство концентратора, указанное в UCX.
Пример кода см. в разделе EVT_UCX_CONTROLLER_USBDEVICE_ADD.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 10 |
Целевая платформа | Windows |
Минимальная версия KMDF | 1,0 |
Минимальная версия UMDF | 2,0 |
Верхняя часть | ucxusbdevice.h (включая Ucxclass.h) |
IRQL | PASSIVE_LEVEL |