Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / MS TAPI2.X и программное управление потоком модем-комп / 1 сообщений из 1, страница 1 из 1
11.10.2013, 14:50
    #38424523
ichthyandr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS TAPI2.X и программное управление потоком модем-комп
Всем привет.

проблема такая - с использованием TAPI делаю программу для передачи сообщений через аналоговый модем. Для функций чтения/записи ReadFile/WriteFile делаю настройки через SetCommTimeouts:


Код: plaintext
1.
2.
3.
4.
5.
commTimeouts.ReadIntervalTimeout            = MAXDWORD;
commTimeouts.ReadTotalTimeoutMultiplier     = MAXDWORD;
commTimeouts.ReadTotalTimeoutConstant       = 10000;
commTimeouts.WriteTotalTimeoutMultiplier    = 0;
commTimeouts.WriteTotalTimeoutConstant      = 10000;

в MSDN по этому поводу:

If an application sets ReadIntervalTimeout and ReadTotalTimeoutMultiplier to MAXDWORD and sets ReadTotalTimeoutConstant to a value greater than zero and less than MAXDWORD, one of the following occurs when the ReadFile function is called:

If there are any bytes in the input buffer, ReadFile returns immediately with the bytes in the buffer.
If there are no bytes in the input buffer, ReadFile waits until a byte arrives and then returns immediately.
If no bytes arrive within the time specified by ReadTotalTimeoutConstant, ReadFile times out.

Посему читаю посимвольно, с контролем длины сообщений. Все работает отлично, пока управление потоком com-port <-> модем аппаратное. Если переключиться на софтовое xon/xoff - то передача некоторое время идет, потом затыкается на чтении:


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
...
14:19:04.315 DEBUG: _link::receive()
14:19:04.316 TRACE: _link::get_packet() - start
14:19:04.316 TRACE: _link::get_char - call ReadFile, m_hFile=0x0000015C
14:19:04.316 TRACE: _link::get_char - ReadFile - Overlapped I/O operation is in progress
14:19:14.316 FATAL: _link::get_char - got zero reply
...

видно что отваливается по таймауту. Кто сталкивался с таким, чем лечить?

Спасибо.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / MS TAPI2.X и программное управление потоком модем-комп / 1 сообщений из 1, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]