|
|
|
Сколько байт в буфере СOM-порта
|
|||
|---|---|---|---|
|
#18+
Привет ! Господа, подскажите, как мне узнать сколько байт мне приползло в порт после события EV_RXCHAR: Устанавливаю так: SetCommMask(hCom, EV_RXCHAR) Ловлю в потоке: WaitCommEvent(hCom, &dwEvtMask, &osWaiting))) if (dwEvtMask&EV_RXCHAR) { //Вот тут как узнать сколько там уже лежит ? .... } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2004, 15:06 |
|
||
|
Сколько байт в буфере СOM-порта
|
|||
|---|---|---|---|
|
#18+
В догонку: Хотелось бы узнать ответ на следующий вопрос: 1 программа открыла порт, получила хендл; 2 программа обнаружила что порт уже открыт; Как из второй программы писать данные в порт открытый первой ? Как я понимаю хендл порта он же не уникален для всей системы, не факт что если 1 программа пишет в порт с хендлом х, то вторая записав данные по тому же адресу попадет именно в порт или попадет ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2004, 15:10 |
|
||
|
Сколько байт в буфере СOM-порта
|
|||
|---|---|---|---|
|
#18+
Например, это можно сделать так: unsigned long bytesWaiting() const { COMSTAT Win_ComStat; DWORD Win_ErrorMask = 0; ClearCommError( Win_Handle, & Win_ErrorMask, & Win_ComStat ); return Win_ComStat.cbInQue; } где, Win_Handle - хендл твоего порта ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 18:22 |
|
||
|
|

start [/forum/topic.php?fid=57&tid=2034663]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
72ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
33ms |
get tp. blocked users: |
2ms |
| others: | 227ms |
| total: | 381ms |

| 0 / 0 |
