Функция ClearCommError извлекает информацию об коммуникационной ошибке и сообщает о текущем состоянии коммуникационного устройства. Функция вызывается тогда, когда происходит ошибка обмена информацией и сбрасывает флажок ошибки устройства, чтобы включить в работу дополнительные операции ввода и вывода данных (I/O).
Синтаксис
BOOL ClearCommError( HANDLE hFile, LPDWORD lpErrors, LPCOMSTAT lpStat ); |
Параметры
hFile
[in] Дескриптор коммуникационного устройства. Функция CreateFile возвращает этот дескриптор.lpErrors
[out] Указатель на переменную, которая составляет маску, указывающую тип ошибки. Этот параметр может состоять из одного или нескольких ниже перечисленных значений.
Значение | Предназначение |
---|---|
CE_BREAK | Аппаратные средства обнаружили условие прерывания. |
CE_DNS | Windows Me/98/95: Параллельное устройство не выбрано. |
CE_FRAME | Аппаратные средства обнаружили ошибку кадровой синхронизации. |
CE_IOE | Ошибка ввода - вывода (I/O) произошла в ходе обмена информацией с устройством. |
CE_MODE | Затребованный режим не поддерживается, или недопустим параметр hFile. Если это значение устанавливается, то это - единственная допустимая ошибка. |
CE_OOP | Windows Me/98/95: Параллельное устройство сообщило, что оно является за пределами листа бумаги. |
CE_OVERRUN | Произошло переполнение буфера символов. Следующий символ потерялся. |
CE_PTO | Windows Me/98/95: Произошел перерыв в работе на параллельном устройстве. |
CE_RXOVER | Произошло переполнение буфера ввода данных. Или нет места в буфере ввода данных, или символ был получен после метки конца файла (EOF). |
CE_RXPARITY | Аппаратные средства обнаружили ошибку четности. |
CE_TXFULL | Приложение пыталось передать символ, но буфер вывода данных был заполнен. |
Возвращаемые значения
Если функция завершается успешно, возвращаемое значение не нуль.
Если функция завершается ошибкой, возвращаемое значение равняется нулю. Чтобы получить дополнительную информацию об ошибке, вызовите GetLastError.
Замечания
Если коммуникационный порт установлен со значением ИСТИНА (TRUE) в члене fAbortOnError структуры установки программы DCB, коммуникационная программа завершит работу всех операций чтения и записи на коммуникационном порте, когда происходит коммуникационная ошибка. Новые операции чтения или записи не должны допускаться до тех пор, пока прикладная программа не опознает коммуникационную ошибку при помощи вызова функция ClearCommError.
Функция ClearCommError заполняет буфер состояния, на который указывает параметр lpStat текущим состоянием коммуникационного устройства, определенного параметром hFile.
Смотри также
Обзор Коммуникационные ресурсы, Функции, используемые коммуникационными ресурсами, ClearCommBreak, COMSTAT, CreateFile, DCB
Размещение и совместимость ClearCommError |
||
К | Windows XP | Да |
л | Windows 2000 Professional | Да |
и | Windows NT Workstation | Да |
е | Windows Me | Да |
н | Windows 98 | Да |
т | Windows 95 | Да |
С |
Windows 2003 Server |
Да |
е |
Windows 2000 Server |
Да |
р |
Windows NT Server |
Да |
в | ||
е | ||
р | ||
Используемая библиотека |
Kernel32.lib |
|
Заголовочный файл |
||
- объявлено в |
Winbase.h |
|
- включено в |
Windows.h |
|
Unicode |
|
|
Замечания по платформе |
Не имеется |