Witam Szanownych Czytelnikow. Mam pewien problem z komponentem do obslugi portow szeregowych COM. Program napisany jest w C++ Builder 5. Aplikacja komunikuje sie z urzadzeniem ktore na zapytanie odpowiada okreslona ramka. Odpowiedz otrzymuje max po 600ms od wyslania ramki z zapytaniem ( plus dodatkowo czas potrzebny na transmisje ramki okolo 320ms( transmisja: 19200
8N1 - spodziewam sie odebrac 611 bajtow stad te dodatkowe 320ms). Ca³y problem w tym ¿e po up³ywie jednej sekundy i odczytaniu ramki z bufora odbiorczego funkcja ComPort1->ReadStr(ramka,rozmiar_bufora); w zmiennej "ramka" znajduje sie tylko czesc odebranych danych. Brakuj±ca czesc znakow znajduje sie jak podejrzewam w jakim dodatkowym buforze poniewaz po uplywie kilkuset milisekund i ponownym odczytaniu odbieram pozostala czesc brakujacych danych. Uzywalem funkcji Win Api FlushFileBuffers aby oproznic bufor:
FlushFileBuffers((void*)(ComPort1->Handle));
ale to niestety nic nie pomoglo. Jezeli ktos ma jakies sugestie bardzo chetnie wyslucham. Dziekuje za wszelka pomoc;