KsClearCommError
此函式是否可用依装置支援项目而定。
检索有关通讯错误的讯息并回报通讯装置的当前状态,当发生通讯错误时会呼叫此函式,其将清除装置的错误旗标以启用额外的输入和输出 (I/O) 操作。
语法
BOOL KsClearCommError(
HANDLE hFile,
LPDWORD lpErrors,
LPCOMSTAT lpStat
);
参数
hFile:通讯装置的控制代码,KsCreateComm 函式回传此控制代码。
lpErrors:接收指示错误种类的遮罩值指标,此参数可为下列一个或多个值:
值 | 说明 |
---|---|
CE_BREAK 0x0010 |
硬体侦测到中断情况。 |
CE_FRAME 0x0008 |
硬体侦测到成框误差 (framing error)。 |
CE_OVERRUN 0x0002 |
发生字元缓冲区超出,下一个字元遗失。 |
CE_RXOVER 0x0001 |
发生输入缓冲区溢位,输入缓冲区中没有空间,或在档案结束 (EOF) 字元之后接收到一个字元。 |
CE_RXPARITY 0x0004 |
硬体侦测到同位误差 (parity error)。 |
lpStat: :装置状态资讯回传的 COMSTAT 结构,若参数为 NULL,则表示无回传资讯。
回传值
若函式执行成功将回传 TRUE;失败将回传 FALSE。欲获取延伸错误资讯请呼叫 GetLastError。
备注
若通讯埠已为 DCB 设置结构的 fAbortOnError
成员设置了 TRUE 值,则当发生通讯错误时,通讯软体将终止通讯埠上的所有读写操作,而在应用程序呼叫 KsClearCommError 函式以确认通讯错误之前,不会接受新的读取或写入操作。
范例
N/A
使用需求
RT | Win32 | |
---|---|---|
最低支援版本 | 4.0 | 4.0 |
标头档 | kscom.h | kscom.h |
程式库 | KsApi_Rtss.lib | ksapi.h |
参见