Share via


PurgeComm

This function can discard 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.

BOOL PurgeComm(
HANDLE hFile, 
DWORD dwFlags); 

Parameters

  • hFile
    [in] Handle to the communications resource. The CreateFile function returns this handle.
  • dwFlags
    [in] Specifies the action to take. This parameter can be a combination of the following values:
    Value Description
    PURGE_TXABORT Terminates all outstanding overlapped write operations and returns immediately, even if the write operations have not been completed.
    PURGE_RXABORT Terminates all outstanding overlapped read operations and returns immediately, even if the read operations have not been completed.
    PURGE_TXCLEAR Clears the output buffer (if the device driver has one).
    PURGE_RXCLEAR Clears the input buffer (if the device driver has one).

Return Values

Nonzero indicates success. Zero indicates failure. To get extended error information, call GetLastError.

Remarks

If a thread uses PurgeComm 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.

Requirements

Runs On Versions Defined in Include Link to
Windows CE OS 1.0 and later Winbase.h   Serdev.lib

Note   This API is part of the complete Windows CE OS package as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM) and some devices may not support this API.

See Also

CreateFile, FlushFileBuffers, GetLastError

 Last updated on Tuesday, July 13, 2004

© 1992-2000 Microsoft Corporation. All rights reserved.