COMMPROP
The COMMPROP
structure is used by the GetCommProperties
typedef struct _COMMPROP { // cmmp
WORD wPacketLength; // packet size, in bytes
WORD wPacketVersion; // packet version
DWORD
dwServiceMask; // services
implemented
DWORD
dwReserved1; // reserved
DWORD
dwMaxTxQueue; // max Tx bufsize,
in bytes
DWORD
dwMaxRxQueue; // max Rx bufsize,
in bytes
DWORD
dwMaxBaud; // max baud rate, in
bps
DWORD
dwProvSubType; // specific provider
type
DWORD
dwProvCapabilities; // capabilities
supported
DWORD
dwSettableParams; // changable parameters
DWORD
dwSettableBaud; // allowable baud
rates
WORD wSettableData; // allowable byte sizes
WORD wSettableStopParity; // stop bits/parity
allowed
DWORD
dwCurrentTxQueue; // Tx buffer size,
in bytes
DWORD
dwCurrentRxQueue; // Rx buffer size,
in bytes
DWORD
dwProvSpec1; // provider-specific
data
DWORD
dwProvSpec2; // provider-specific
data
WCHAR
wcProvChar[1]; // provider-specific
data
} COMMPROP;
Members
wPacketLength
Specifies the
size, in bytes, of the entire data packet, regardless of the amount of data
requested.
wPacketVersion
Specifies the
version of the structure.
dwServiceMask
Specifies a
bitmask indicating which services are implemented by this provider. The
SP_SERIALCOMM value is always specified for communications providers, including
modem providers.
dwReserved1
Reserved; do
not use.
dwMaxTxQueue
Specifies the
maximum size, in bytes, of the driver s internal output buffer. A value of zero
indicates that no maximum value is imposed by the serial provider.
dwMaxRxQueue
Specifies the
maximum size, in bytes, of the driver s internal input buffer. A value of zero
indicates that no maximum value is imposed by the serial provider.
dwMaxBaud
Specifies the
maximum allowable baud rate, in bits per second (bps). This member can be one
of the following values:
Value |
Meaning |
BAUD_075 |
75 bps |
BAUD_110 |
110 bps |
BAUD_134_5 |
134.5 bps |
BAUD_150 |
150 bps |
BAUD_300 |
300 bps |
BAUD_600 |
600 bps |
BAUD_1200 |
1200 bps |
BAUD_1800 |
1800 bps |
BAUD_2400 |
2400 bps |
BAUD_4800 |
4800 bps |
BAUD_7200 |
7200 bps |
BAUD_9600 |
9600 bps |
BAUD_14400 |
14400 bps |
BAUD_19200 |
19200 bps |
BAUD_38400 |
38400 bps |
BAUD_56K |
56K bps |
BAUD_57600 |
57600 bps |
BAUD_115200 |
115200 bps |
BAUD_128K |
128K bps |
BAUD_USER |
Programmable
baud rates available |
dwProvSubType
Specifies the
specific communications provider type:
Value |
Meaning |
PST_FAX |
FAX device |
PST_LAT |
LAT
protocol |
PST_MODEM |
Modem
device |
PST_NETWORK_BRIDGE |
Unspecified
network bridge |
PST_PARALLELPORT |
Parallel
port |
PST_RS232 |
RS-232
serial port |
PST_RS422 |
RS-422 port |
PST_RS423 |
RS-423 port |
PST_RS449 |
RS-449 port |
PST_SCANNER |
Scanner
device |
PST_TCPIP_TELNET |
TCP/IP
Telnet protocol |
PST_UNSPECIFIED |
Unspecified |
PST_X25 |
X.25
standards |
dwProvCapabilities
Specifies a
bitmask indicating the capabilities offered by the provider. This member can be
one of the following values:
Value |
Meaning |
PCF_16BITMODE |
Special
16-bit mode supported |
PCF_DTRDSR |
DTR
(data-terminal-ready)/DSR (data-set-ready) supported |
PCF_INTTIMEOUTS |
Interval
time-outs supported |
PCF_PARITY_CHECK |
Parity
checking supported |
PCF_RLSD |
RLSD
(receive-line-signal-detect) supported |
PCF_RTSCTS |
RTS
(request-to-send)/CTS (clear-to-send) supported |
PCF_SETXCHAR |
Settable
XON/XOFF supported |
PCF_SPECIALCHARS |
Special
character support provided |
PCF_TOTALTIMEOUTS |
Total
(elapsed) time-outs supported |
PCF_XONXOFF |
XON/XOFF
flow control supported |
dwSettableParams
Specifies a
bitmask indicating the communications parameter that can be changed. This
member can be one of the following values:
Value |
Meaning |
SP_BAUD |
Baud rate |
SP_DATABITS |
Data bits |
SP_HANDSHAKING |
Handshaking
(flow control) |
SP_PARITY |
Parity |
SP_PARITY_CHECK |
Parity
checking |
SP_RLSD |
RLSD
(receive-line-signal-detect) |
SP_STOPBITS |
Stop bits |
dwSettableBaud
Specifies a
bitmask indicating the baud rates that can be used. For values, see the dwMaxBaud
member.
wSettableData
Specifies a
bitmask indicating the number of data bits that can be set. This member can be
one of the following values:
Value |
Meaning |
DATABITS_5 |
5 data bits |
DATABITS_6 |
6 data bits |
DATABITS_7 |
7 data bits |
DATABITS_8 |
8 data bits |
DATABITS_16 |
16 data
bits |
DATABITS_16X |
Special
wide path through serial hardware lines |
wSettableStopParity
Specifies a
bitmask indicating the stop bit and parity settings that can be selected. This
member can be one of the following values:
Value |
Meaning |
STOPBITS_10 |
1 stop bit |
STOPBITS_15 |
1.5 stop
bits |
STOPBITS_20 |
2 stop bits |
PARITY_NONE |
No parity |
PARITY_ODD |
Odd parity |
PARITY_EVEN |
Even parity |
PARITY_MARK |
Mark parity |
PARITY_SPACE |
Space
parity |
dwCurrentTxQueue
Specifies the
size, in bytes, of the driver s internal output buffer. A value of zero
indicates that the value is unavailable.
dwCurrentRxQueue
Specifies the
size, in bytes, of the driver s internal input buffer. A value of zero
indicates that the value is unavailable.
dwProvSpec1
Specifies
provider-specific data. Applications should ignore this member unless they have
detailed information about the format of the data required by the provider.
Set this
member to COMMPROP_INITIALIZED before calling the GetCommProperties
function to indicate that the wPacketLength member is already valid.
dwProvSpec2
Specifies
provider-specific data. Applications should ignore this member unless they have
detailed information about the format of the data required by the provider.
wcProvChar
Specifies provider-specific
data. Applications should ignore this member unless they have detailed
information about the format of the data required by the provider.
Remarks
The contents
of the dwProvSpec1, dwProvSpec2, and wcProvChar members
depend on the provider subtype (specified by the dwProvSubType member).
If the
provider subtype is PST_MODEM, these members are used as follows:
Value |
Meaning |
dwProvSpec1 |
Not used. |
dwProvSpec2 |
Not used. |
wcProvChar
|
Contains a MODEMDEVCAPS |
See Also