Есть плата/устройство и драйвер (не HID). Пытаюсь из драйвера отправить свой(нестандартный) запрос в устройство с помощью ф-ции UsbBuildGetDescriptorRequest. Но устроийство всегда получает один из 12-ти стандартных.
Делаю примерно так:
#define MY_REQUEST 13
UsbBuildGetDescriptorRequest(
urb,
(USHORT) sizeof(struct _URB_CONTROL_DESCRIPTOR_REQUEST),
MY_REQUEST,
0,
0,
ioBuffer,
NULL,
outputBufferLength,
NULL);
UsbBuildFeatureRequest() и UsbBuildStatusRequest() пока не разбирался, но по описанию, вроде, не подходят по причине кучи параметров в запросе.
Как отправить свой запрос?
Как правильно переписать структуру URB и ф-цию/макрос UsbBuildGetDescriptorRequest под свои запросы?
Как usbser.sys отправляет CDCзапросы типа SETLINECODING, GETLINECODING, SETCONTROLLINESTATE?