Функция WriteFile() в USB не всегда возвращается по выводу _всех_ байтов. Независимо от режима открытия устройства (syncIO/asyncIO). Компонент может об этом не знать. И, соответственно, не передавать повторно остаток Вашего пакета. Особенно актуально на порциях данных (т.е. пакетах char *) более, чем размер пакета USB в конкретном режиме работы (isochronouse, bulk, interrupt ....)
--------------------
- А мораль отсюда такова: всякому овощу свое время. Или, хочешь, я это сформулирую попроще: никогда не думай, что ты иная, чем могла бы быть иначе, чем будучи иной в тех случаях, когда иначе нельзя не быть. © Lewis Carroll. Alice's adventures in wonderland.
|