共用方式為


ClearCommError 函式 (winbase.h)

擷取通訊錯誤的相關信息,並報告通訊裝置的目前狀態。 函式會在發生通訊錯誤時呼叫,並清除裝置的錯誤旗標,以啟用額外的輸入和輸出 (I/O) 作業。

語法

BOOL ClearCommError(
  [in]            HANDLE    hFile,
  [out, optional] LPDWORD   lpErrors,
  [out, optional] LPCOMSTAT lpStat
);

參數

[in] hFile

通訊裝置的句柄。 CreateFile 函式會傳回這個句柄。

[out, optional] lpErrors

接收指出錯誤類型的遮罩之變數的指標。 此參數可以是下列一或多個值。

意義
CE_BREAK
0x0010
硬體偵測到中斷狀況。
CE_FRAME
0x0008
硬體偵測到框架錯誤。
CE_OVERRUN
0x0002
字元緩衝區發生滿溢情形, 下一個字元將遺失。
CE_RXOVER
0x0001
輸入緩衝區發生溢位情形, 表示此緩衝區內已經沒有空間了,或者在 EOF (end-of-file,檔案結尾) 字元之後還收到一個字元。
CE_RXPARITY
0x0004
硬體偵測到同位檢查錯誤。
 

不支援下列值:

[out, optional] lpStat

COMSTAT 結構的指標,其中會傳回裝置的狀態資訊。 如果此參數為 NULL,則不會傳回任何狀態資訊。

傳回值

如果函式成功,則傳回非零的值。

如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError

備註

如果通訊埠已針對安裝程式DCB結構的 fAbortOnError 成員設定 TRUE 值,則通訊軟體會在發生通訊錯誤時終止通訊埠上的所有讀取和寫入作業。 在應用程式藉由呼叫 ClearCommError 函 式認可通訊錯誤之前,將不會接受任何新的讀取或寫入作業。

ClearCommError 函式會將 lpStat 參數所指向的狀態緩衝區填入 hFile 參數所指定的通訊裝置目前狀態。

規格需求

需求
最低支援的用戶端 Windows XP [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2003 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 winbase.h (包含 Windows.h)
程式庫 Kernel32.lib
DLL Kernel32.dll

另請參閱

COMSTAT

ClearCommBreak

通訊功能

通訊資源

CreateFile

DCB