KsPurgeComm

The availability of this function depends on what the device supports.

Discards all characters from the output or input buffer of a specified communications resource. It can also terminate pending read or write operations on the resource.

Syntax

BOOL KsPurgeComm(
     HANDLE hFile,
     DWORD dwFlags
);

Parameters

hFile: a handle to the communications resource. The KsCreateComm function returns this handle.

dwFlags: this parameter can be one or more of the following values.

Value Description

PURGE_RXABORT

0x0002

Terminates all outstanding overlapped read operations and returns immediately, even if the read operations have not been completed.

PURGE_RXCLEAR

0x0008

Clears the input buffer (if the device driver has one).

PURGE_TXABORT

0x0001

Terminates all outstanding overlapped write operations and returns immediately, even if the write operations have not been completed.

PURGE_TXCLEAR

0x0004

Clears the output buffer (if the device driver has one).

Return value

If the function succeeds, it returns TRUE, otherwise FALSE. To get extended error information, call GetLastError.

Remarks

If a thread uses KsPurgeComm to flush an output buffer, the deleted characters are not transmitted. To empty the output buffer while ensuring that the contents are transmitted, call the FlushFileBuffers function (a synchronous operation). Note, however, that FlushFileBuffers is subject to flow control but not to write time-outs, and it will not return until all pending write operations have been transmitted.

Example

N/A

Requirements

  RT Win32
Minimum supported version 4.0 4.0
Header kscom.h kscom.h
Library KsApi_Rtss.lib ksapi.h

See also

KsCreateComm