共用方式為


SERIAL_HANDFLOW結構 (ntddser.h)

SERIAL_HANDFLOW 結構會指定序列埠的交握和流程控制設定。

語法

typedef struct _SERIAL_HANDFLOW {
  ULONG ControlHandShake;
  ULONG FlowReplace;
  LONG  XonLimit;
  LONG  XoffLimit;
} SERIAL_HANDFLOW, *PSERIAL_HANDFLOW;

成員

ControlHandShake

位掩碼,指定序列埠用於流程控制的控制線。 這個成員設定為零或位 OR 或下列一或多個旗標。

價值 描述
SERIAL_DTR_CONTROL 已啟用 DTR(數據終端機就緒)。
SERIAL_DTR_HANDSHAKE DTR 用於輸入流程控制。
SERIAL_CTS_HANDSHAKE CTS(清除傳送)用於輸出流量控制。
SERIAL_DSR_HANDSHAKE DSR (數據集就緒)用於輸出流程控制。
SERIAL_DCD_HANDSHAKE DCD (資料載波偵測) 用於輸出流量控制。
SERIAL_DSR_SENSITIVITY 當 DSR 行處於非使用中狀態時,忽略抵達序列埠的字元。
SERIAL_ERROR_ABORT 如果發生錯誤,中止傳輸或接收作業。
 

SerCx2 支援SERIAL_CTS_HANDSHAKE旗標,而且可能或可能不支援為此成員定義的其他六個旗標,視序列控制器驅動程式和序列控制器硬體的功能而定。 SerCx 僅支援上表的前四個旗標。 Serial.sys 支援上表中的所有旗標。

FlowReplace

指定流程控制行為的位掩碼。 這個成員設定為零或位 OR 或下列一或多個旗標。

價值 描述
SERIAL_AUTO_TRANSMIT 使用 XON/XOFF 來控制傳輸的數據。
SERIAL_AUTO_RECEIVE 使用 XON/XOFF 來控制已接收數據的流程。
SERIAL_ERROR_CHAR 在發生錯誤時,將錯誤字元插入收到的數據中。 如需詳細資訊,請參閱 SERIAL_CHARSErrorChar 成員的描述。
SERIAL_NULL_STRIPPING 自動從接收的數據中移除 Null 字元。
SERIAL_BREAK_CHAR 當中斷發生時,將中斷字元插入接收的數據中。 如需詳細資訊,請參閱 SERIAL_CHARSBreakChar 成員的描述。
SERIAL_RTS_CONTROL 已啟用 RTS(傳送要求)。
SERIAL_RTS_HANDSHAKE RTS 用於輸出流程控制。
SERIAL_XOFF_CONTINUE 將 XOFF 傳送至線路另一端的裝置之後,繼續傳輸。
 

SerCx2 支援SERIAL_RTS_CONTROL和SERIAL_RTS_HANDSHAKE旗標,但通常不支援為此成員定義的其他六個旗標,視序列控制器驅動程式和序列控制器硬體的功能而定。 SerCx 僅支援SERIAL_RTS_CONTROL和SERIAL_RTS_HANDSHAKE旗標。 Serial.sys 支援上表中的所有旗標。

XonLimit

XON 限制。 當內部接收緩衝區中的字元數低於 XON 限制時,序列控制器驅動程式會使用流程控制訊號告訴傳送者繼續傳送字元。

XoffLimit

XOFF 限制。 當內部接收緩衝區中的字元數達到 XOFF 限制時,序列控制器驅動程式會使用流程控制訊號告訴傳送者停止傳送字元。

言論

IOCTL_SERIAL_GET_HANDFLOWIOCTL_SERIAL_SET_HANDFLOW 要求會使用此結構。

傳送 XOFF(傳輸關閉)字元之後,序列埠會立即停止傳輸,而不會再傳送任何字元。 此行為支援串行埠,可將 XOFF 後面的任何字元解譯為隱含 XON(傳輸開啟)。

SerCx2 和 SerCx 僅支援針對 ControlHandShakeFlowControl 成員所定義的旗標子集。 指定不支援旗標的 IOCTL_SERIAL_SET_HANDFLOW 要求已完成STATUS_NOT_IMPLEMENTED。

要求

要求 價值
標頭 ntddser.h

另請參閱

IOCTL_SERIAL_GET_HANDFLOW

IOCTL_SERIAL_SET_HANDFLOW