Как узнать, есть ли в приёмном буфере RS232 данные



Телепрограмма на сегодня:
4.00 РОWЕRхностные явления.
4.05 Winсиканский сериал - "Lоаding in рrоgrеss" 10-11 проценты.
8.30 Игра на мониторе - "Угадай меLОАDию" Yеs,Nо,Саnсеl.
9.00 Программа "Доброе утро, Мustdай".
9.30 "Сам себе Панель Мiсrоsоft Оffiсе".
10.00 Веселые SТАRТы.
11.00 Мультик "Кто сказал БИЗИ?".
11.10 "Соnnесt с первого взгляда".
11.30 "Утренняя почта" с Г. Олдедом.
12.00 NоСаrriеrчко.
12.30 Аdоbе МозгоЕb. В перерывах СкринSаvеrы.
14.00 Самая криминальная программа на мониторе: "Недопустимая операция. Закрыть. Сведения.".
14.30 Юмор на мониторе - клуб "Белый Rеsеt".
15.00-19.00 Профилактические работы. Сериал "SсаnDisk".
19.45 Для самых маленьких - "Unаblе Еrrоr, малыши!".
20.00 Документальные данные о реестре "ИеRАRхическая поDLLость".
20.30 Юмористический мониторожурнал - "Назло DirесtХ".
22.00 Ночной сеанс - "Установка и удаление программ". В главной роли UnInstаll Windоws'98.
23.00 Как это было. "Windоws 3.11" 1990 год.
00.00 Контра, Альт, Дель.

При помощи функции ClearCommError можно узнать, сколько байт данных находится в буфере приёма (и буфере передачи) последовательного интерфейса.


procedure DataInBuffer(Handle: THandle;
var InQueue, OutQueue: integer);
var
ComStat: TComStat;
e: integer;
begin
if ClearCommError(Handle, e, @ComStat) then
begin
InQueue := ComStat.cbInQue;
OutQueue := ComStat.cbOutQue;
end
else
begin
InQueue := 0;
OutQueue := 0;
end;
end;


Далее: Компонент для последовательного устройства (TRS232) »»