Извиняюсь, что опять поднял тему, но у меня проблема всплыла непонятная(
Проблема возникает при чтении. С драйвером atm6124ser чтение я осуществлял следующим образом:
Код
AvaibleBytes = 0;
while(AvaibleBytes<32)
{
AvaibleBytes = comstat.cbInQue;
Success = ClearCommError(port, &lpErr, &comstat);
}
Success = ReadFile(port, &CommandW, 34, &RealRead, NULL);
Все отлично работало.
Так вот, с драйвером atm6124 ClearCommError(PipeIn, &lpErr, &comstat) возвращает ошибку (Параметр задан неверно). Т.е. имя устройства я исправил, но всеравно ошибка. Я решил отказаться от этой функции и записал просто:
Код
while(!Success)
{
Success = ReadFile(PipeIn, &CommandW, 34, &RealRead, NULL);
}
В итоге не дожидаясь 34 байт от моего девайса приложение выходит из этого цикла и в буфер CommandW записывается всякая ерунда! Почему такое происходит??? Я конечно поставил перед этим циклом Sleep(10000), чтобы успеть отправить девайсу (не по USB) то, что он потом должен вернуть по USB, но это же не выход...