Здравствуйте, 4x, Вы писали:
4x>Здравствуйте, XorNeT, Вы писали:
XNT>Проблема в чем ф-я реадфайл при чтении возвращает 0 прочитанных байт и отсутствие ошибки.
XNT>Данные точно присутствуют (кидаю гипертерминалом по нуль-модему). Причем в другом потоке в этот порт пишу без проблем. таймауты установлены нулевые — чтение происходит в цикле. Кто подскажет где грабли жить могут?
XNT>всем пасиба
4x>Ты скажи, как СОМ-порт используешь (хотя-бы платформа какая)? Из-под виндов? Какими функциями обращаешся? Тогда виднее бодет...
Платформа в2к читаю реадфайлом предварительно вызывая SetCommState() & SetCommTimeouts()
if(hCom!= INVALID_HANDLE_VALUE){
DCB dCB;
::GetCommState(hCom,&dCB);
dCB.DCBlength = sizeof(DCB);
dCB.BaudRate = CBR_9600;
dCB.fParity = TRUE;
dCB.Parity = NOPARITY;
dCB.ByteSize = 8;
dCB.StopBits = ONESTOPBIT;
if(!::SetCommState(hCom,&dCB)){
TRACE("Error:SetComstate(rt)-%d\n",GetLastError());
}
}
COMMTIMEOUTS pCT;
pCT.ReadIntervalTimeout = MAXDWORD;
pCT.ReadTotalTimeoutConstant = 0;
pCT.ReadTotalTimeoutMultiplier = 0;
pCT.WriteTotalTimeoutConstant = 0;
pCT.WriteTotalTimeoutMultiplier =0;