ClearCommError()函数

清除串行端口错误或读取串行端口现在的状态时,可用函数ClearCommError。Windows系统利用此函数清除硬件的通讯错误以及获取通讯设备的当前状态

ClearCommError()函数原型

ClearCommError()函数参数说明:

  • hFile:串行端冂的Handle值,此值即为使用CreateFile函数后所返回的值。
  • lpError:返回错误数值,错误常数如下:
    CE_BREAK:检测到中断信号。
    CE_DNS:Windows95专用,未被选择的并行端口。
    CE_FRAME:硬件检到框架错误
    CE_IOE:通信设备发生输入/输出綹误,
    CE_MODE:设置模式错误,或是hFile值错误。
    CE_OOP:Wmdows95专用,并行端口发生缺纸错误。CE_OVERRUN:缓冲区容量不足,数据将遗失。
    CE_PTO:Windows95专用,并行端口发生超时错误。
    CE_RXOVER:接收区满溢或在文件结尾被接收到后仍有数据发送过来。
    CE_RXPARITY:硬件检测到校验位检查错误。
    CE_TXFULL:发送缓存区已满后,应用程序仍要发送数据。
  • lpStat:指向通信端口状态的结构变量。此结构的原始声明如下:

    此结构屮有关参数说明如下:
    fCtsHold:是否正在等待CTS信号。占一个位的位置。
    fDsrHold:是否正在等待DSR信号。占一个位的位置。
    fRlsdHoId:是否正在等待RLSD信号。占一个位的位置。
    fXoftHoId:是否因收到xoff字符而在等待。占一个位的位置。
    fXoffHold:是否因送出xoff字符而使得发送的动作在等待。占一个位置
    cbInQue:在输入缓冲区尚未被ReadFile函数读取的数据字节数。这个参数经常被用来进行状态检查。
    cbOutQue:在发送缓冲区而尚未被发送的据字节数。