ClearCommError 函数 (winbase.h)
检索有关通信错误的信息并报告通信设备的当前状态。 发生通信错误时,将调用 函数,并清除设备的错误标志,以启用其他输入和输出 (I/O) 操作。
语法
BOOL ClearCommError(
[in] HANDLE hFile,
[out, optional] LPDWORD lpErrors,
[out, optional] LPCOMSTAT lpStat
);
参数
[in] hFile
通信设备的句柄。 CreateFile 函数返回此句柄。
[out, optional] lpErrors
指向变量的指针,该变量接收指示错误类型的掩码。 此参数可使用以下一个或多个值。
值 | 含义 |
---|---|
|
硬件检测到中断条件。 |
|
硬件检测到一个组帧错误。 |
|
发生字符缓冲区溢出。 下一个字符将丢失。 |
|
发生输入缓冲区溢出。 输入缓冲区空间不足,或在文件尾 (EOF) 字符之后接收到字符。 |
|
硬件检测到奇偶校验错误。 |
不支持以下值:
[out, optional] lpStat
指向 COMSTAT 结构的指针,其中返回设备的状态信息。 如果此参数为 NULL,则不返回任何状态信息。
返回值
如果该函数成功,则返回值为非零值。
如果函数失败,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。
注解
如果已使用设置 DCB 结构的 fAbortOnError 成员的 TRUE 值设置了通信端口,则发生通信错误时,通信软件将终止该通信端口上的所有读取和写入操作。 在应用程序通过调用 ClearCommError 函数确认通信错误之前,不会接受新的读取或写入操作。
ClearCommError 函数使用 hFile 参数指定的通信设备的当前状态填充 lpStat 参数指向的状态缓冲区。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [桌面应用 | UWP 应用] |
最低受支持的服务器 | Windows Server 2003 [桌面应用 | UWP 应用] |
目标平台 | Windows |
标头 | winbase.h (包括 Windows.h) |
Library | Kernel32.lib |
DLL | Kernel32.dll |