WinUsb_WritePipe заходит в бесконечный цикл
Я использую функцию WinUsb_WritePipe для записи данных на USB-устройство.
Единственная проблема в том, что функция делает бесконечный цикл.
//bulkOutPipe is a pipeId set precedently
//ucBuffer is an unsigned char array
//uiBytesToWrite corresponds to the size of the array
//ulBytesWritten is a unsigned long to stock the bytes written
std::cout << "Started writing" << std::endl;
WinUsb_WritePipe(devInfo->winUsbHandle, devInfo->bulkOutPipe, ucBuffer, uiBytesToWrite, &ulBytesWritten, 0);
//never gets here
Эта функция раньше возвращала false, но теперь она ничего не возвращает.
1 ответ
Решение
Чтобы избежать бесконечного цикла, я бы рекомендовал всегда устанавливать тайм-аут для операций ввода-вывода, как это. Вы можете использовать функции WinUSB для модификации политики канала.