Поделиться через


Функция PurgeComm (winbase.h)

Удаляет все символы из выходного или входного буфера указанного ресурса связи. Он также может завершить ожидающие операции чтения или записи в ресурсе.

Синтаксис

BOOL PurgeComm(
  [in] HANDLE hFile,
  [in] DWORD  dwFlags
);

Параметры

[in] hFile

Дескриптор ресурса связи. Функция CreateFile возвращает этот дескриптор.

[in] dwFlags

Этот параметр может иметь одно или несколько из следующих значений.

Значение Значение
PURGE_RXABORT
0x0002
Завершает все невыполненные перекрывающиеся операции чтения и немедленно возвращается, даже если операции чтения не были завершены.
PURGE_RXCLEAR
0x0008
Очищает входной буфер (если он имеется у драйвера устройства).
PURGE_TXABORT
0x0001
Завершает все невыполненные перекрывающиеся операции записи и возвращает немедленно, даже если операции записи не были завершены.
PURGE_TXCLEAR
0x0004
Очищает выходной буфер (если он есть у драйвера устройства).

Возвращаемое значение

Если функция выполняется успешно, возвращается ненулевое значение.

Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

Если поток использует PurgeComm для очистки выходного буфера, удаленные символы не передаются. Чтобы очистить выходной буфер и обеспечить передачу содержимого, вызовите функцию FlushFileBuffers (синхронную операцию). Однако обратите внимание, что flushFileBuffers управляется потоком, но не является временем ожидания записи, и он не возвращается, пока не будут переданы все ожидающие операции записи.

Требования

   
Минимальная версия клиента Windows XP [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2003 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header winbase.h (включая Windows.h)
Библиотека Kernel32.lib
DLL Kernel32.dll

См. также

Функции связи

Ресурсы связи

CreateFile