comMPROP 结构 (winbase.h)

包含有关通信驱动程序的信息。

语法

typedef struct _COMMPROP {
  WORD  wPacketLength;
  WORD  wPacketVersion;
  DWORD dwServiceMask;
  DWORD dwReserved1;
  DWORD dwMaxTxQueue;
  DWORD dwMaxRxQueue;
  DWORD dwMaxBaud;
  DWORD dwProvSubType;
  DWORD dwProvCapabilities;
  DWORD dwSettableParams;
  DWORD dwSettableBaud;
  WORD  wSettableData;
  WORD  wSettableStopParity;
  DWORD dwCurrentTxQueue;
  DWORD dwCurrentRxQueue;
  DWORD dwProvSpec1;
  DWORD dwProvSpec2;
  WCHAR wcProvChar[1];
} COMMPROP, *LPCOMMPROP;

成员

wPacketLength

整个数据包的大小(无论请求的数据量如何),以字节为单位。

wPacketVersion

结构的版本。

dwServiceMask

一个位掩码,指示此提供程序实现哪些服务。 始终为通信提供商(包括调制解调器提供商 )指定SP_SERIALCOMM 值。

dwReserved1

保留值;请勿使用。

dwMaxTxQueue

驱动程序的内部输出缓冲区的最大大小(以字节为单位)。 值为零表示串行提供程序未施加任何最大值。

dwMaxRxQueue

驱动程序的内部输入缓冲区的最大大小(以字节为单位)。 值为零表示串行提供程序未施加任何最大值。

dwMaxBaud

允许的最大波特率(以位/秒为单位) (bps) 。 此成员可以是以下值之一。

含义
BAUD_075
0x00000001
75 bps
BAUD_110
0x00000002
110 bps
BAUD_134_5
0x00000004
134.5 bps
BAUD_150
0x00000008
150 bps
BAUD_300
0x00000010
300 bps
BAUD_600
0x00000020
600 bps
BAUD_1200
0x00000040
1200 bps
BAUD_1800
0x00000080
1800 bps
BAUD_2400
0x00000100
2400 bps
BAUD_4800
0x00000200
4800 bps
BAUD_7200
0x00000400
7200 bps
BAUD_9600
0x00000800
9600 bps
BAUD_14400
0x00001000
14400 bps
BAUD_19200
0x00002000
19200 bps
BAUD_38400
0x00004000
38400 bps
BAUD_56K
0x00008000
56K bps
BAUD_57600
0x00040000
57600 bps
BAUD_115200
0x00020000
115200 bps
BAUD_128K
0x00010000
128K bps
BAUD_USER
0x10000000
可编程波特率。

dwProvSubType

通信提供程序类型。

含义
PST_FAX
0x00000021
FAX 设备
PST_LAT
0x00000101
LAT 协议
PST_MODEM
0x00000006
调制解调器设备
PST_NETWORK_BRIDGE
0x00000100
未指定的网桥
PST_PARALLELPORT
0x00000002
并行端口
PST_RS232
0x00000001
RS-232 串行端口
PST_RS422
0x00000003
RS-422 端口
PST_RS423
0x00000004
RS-423 端口
PST_RS449
0x00000005
RS-449 端口
PST_SCANNER
0x00000022
扫描仪设备
PST_TCPIP_TELNET
0x00000102
TCP/IP Telnet 协议
PST_UNSPECIFIED
0x00000000
未指定
PST_X25
0x00000103
X.25 标准

dwProvCapabilities

指示提供程序提供的功能的位掩码。 此成员可以是以下值的组合。

含义
PCF_16BITMODE
0x0200
支持特殊 16 位模式
PCF_DTRDSR
0x0001
支持 DTR (data-terminal-ready) /DSR (data-set-ready)
PCF_INTTIMEOUTS
0x0080
支持的间隔超时
PCF_PARITY_CHECK
0x0008
支持奇偶校验检查
PCF_RLSD
0x0004
支持 RLSD (receive-line-signal-detect)
PCF_RTSCTS
0x0002
RTS (请求发送) /CTS (支持明文发送)
PCF_SETXCHAR
0x0020
支持可设置的 XON/XOFF
PCF_SPECIALCHARS
0x0100
提供特殊字符支持
PCF_TOTALTIMEOUTS
0x0040
支持的总已用 () 超时
PCF_XONXOFF
0x0010
支持 XON/XOFF 流控制

dwSettableParams

一个位掩码,指示可以更改的通信参数。 此成员可以是以下值的组合。

含义
SP_BAUD
0x0002
波特率
SP_DATABITS
0x0004
数据位
SP_HANDSHAKING
0x0010
握手 (流控制)
SP_PARITY
0x0001
奇偶校验
SP_PARITY_CHECK
0x0020
奇偶校验检查
SP_RLSD
0x0040
RLSD (receive-line-signal-detect)
SP_STOPBITS
0x0008
停止位

dwSettableBaud

可以使用的波特率。 有关值,请参阅 dwMaxBaud 成员。

wSettableData

一个位掩码,指示可设置的数据位数。 此成员可以是以下值的组合。

含义
DATABITS_5
0x0001
5 个数据位
DATABITS_6
0x0002
6 个数据位
DATABITS_7
0x0004
7 个数据位
DATABITS_8
0x0008
8 数据位
DATABITS_16
0x0010
16 个数据位
DATABITS_16X
0x0020
通过串行硬件线的特殊宽路径

wSettableStopParity

一个位掩码,指示可以选择的停止位和奇偶校验设置。 此成员可以是以下值的组合。

含义
STOPBITS_10
0x0001
1 停止位
STOPBITS_15
0x0002
1.5 个停止位
STOPBITS_20
0x0004
2 个停止位
PARITY_NONE
0x0100
无奇偶校验位
PARITY_ODD
0x0200
奇数奇偶校验
PARITY_EVEN
0x0400
偶等奇偶校验
PARITY_MARK
0x0800
标记奇偶校验
PARITY_SPACE
0x1000
空间奇偶校验

dwCurrentTxQueue

驱动程序的内部输出缓冲区的大小(以字节为单位)。 如果值为零,则表示该值不可用。

dwCurrentRxQueue

驱动程序的内部输入缓冲区的大小(以字节为单位)。 如果值为零,则表示该值不可用。

dwProvSpec1

任何特定于提供程序的数据。 应用程序应忽略此成员,除非它们具有有关提供程序所需数据格式的详细信息。

在调用 GetCommProperties 函数之前将此成员设置为 COMMPROP_INITIALIZED,以指示 wPacketLength 成员已有效。

dwProvSpec2

任何特定于提供程序的数据。 应用程序应忽略此成员,除非它们具有有关提供程序所需数据格式的详细信息。

wcProvChar[1]

任何特定于提供程序的数据。 应用程序应忽略此成员,除非它们具有有关提供程序所需数据格式的详细信息。

备注

dwProvSpec1dwProvSpec2wcProvChar 成员的内容取决于由 dwProvSubType 成员) 指定的提供程序子类型 (。

如果提供程序子类型 PST_MODEM,则按如下所示使用这些成员。

含义
dwProvSpec1 未使用。
dwProvSpec2 未使用。
wcProvChar 包含 MODEMDEVCAPS 结构。

要求

   
最低受支持的客户端 Windows XP
最低受支持的服务器 Windows Server 2003
标头 winbase.h (包括 Windows.h)

另请参阅

GetCommProperties