Поделиться через


функция обратного вызова EVT_UDECX_USB_DEVICE_ENDPOINTS_CONFIGURE (udecxusbdevice.h)

Расширение класса эмуляции USB-устройства (UdeCx) вызывает эту функцию обратного вызова для изменения конфигурации путем выбора альтернативного параметра, отключения текущих конечных точек или добавления динамических конечных точек.

Синтаксис

EVT_UDECX_USB_DEVICE_ENDPOINTS_CONFIGURE EvtUdecxUsbDeviceEndpointsConfigure;

void EvtUdecxUsbDeviceEndpointsConfigure(
  [in] UDECXUSBDEVICE UdecxUsbDevice,
  [in] WDFREQUEST Request,
  [in] PUDECX_ENDPOINTS_CONFIGURE_PARAMS Params
)
{...}

Параметры

[in] UdecxUsbDevice

Дескриптор объекта устройства UDE. Драйвер клиента создал этот объект при предыдущем вызове UdecxUsbDeviceCreate.

[in] Request

Дескриптор объекта запроса платформы, который представляет запрос.

[in] Params

Указатель на структуру UDECX_ENDPOINTS_CONFIGURE_PARAMS , описывающую параметры конфигурации.

Возвращаемое значение

None

Remarks

Драйвер клиента зарегистрировал эту функцию обратного вызова в предыдущем вызове UdecxUsbDeviceInitSetStateChangeCallbacks , указав указатель функции на ее реализацию.

Расширение класса вызывает эту функцию обратного вызова, чтобы запросить у драйвера клиента настройку одной или нескольких новых конечных точек в оборудовании и (или) информирует драйвер, когда одна или несколько существующих конечных точек больше не используются.

После создания конечных точек для каждой новой конечной точки драйвер клиента должен вызывать UdecxUsbEndpointSetWdfIoQueue перед выполнением запроса.

После освобождения конечных точек драйвер клиента не должен использовать объекты очереди платформы, связанные с конечными точками. Расширение класса рассматривает эти очереди как очищенные, чтобы предотвратить будущие запросы.

Расширение класса также может запросить новое значение конфигурации или альтернативный параметр с помощью этого обратного вызова.

Этот вызов является асинхронным. Драйвер клиента должен сигналит о завершении с состоянием, выполнив запрос, переданный расширением класса.

Требования

Требование Значение
Минимальная версия клиента Windows 10
Минимальная версия сервера Windows Server 2016
Целевая платформа Windows
Минимальная версия KMDF 1.15
Верхняя часть udecxusbdevice.h (включая Udecx.h)
IRQL <=DISPATCH_LEVEL

См. также раздел

Архитектура: эмуляция USB-устройств (UDE)

UdecxUsbEndpointSetWdfIoQueue

Написание драйвера клиента UDE