typedef struct _COMMPROP { /* cmmp */
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;
wPacketLength
Specifies the length of the entire data packet in bytes, regardless of the amount of data requested.
wPacketVersion
Specifies the version of the data structure.
dwServiceMask
Bitmask indicating which services are implemented by this provider. The SP_SERIALCOMM bit is always set for communications providers.
dwResrved1
Reserved.
dwMaxTxQueue
Specifies the maximum transmit buffer size (internal to the provider) in bytes. A zero indicates that this field is not used.
dwMaxRxQueue
Specifies the maximum receive buffer size (internal to the provider) in bytes. A zero indicates that this field is not used.
dwMaxBaud
Specifies the maximum allowable baud rate in bits per second as follows:
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_128K | 128K bps |
BAUD_USER | Programmable baud rates available |
dwProvSubType
Indicates the specific communications provider type.
Value | Meaning |
PST_UNSPECIFIED | Unspecified |
PST_RS232 | RS-232 Serial Port |
PST_PARALLELPORT | Parallel Port |
PST_RS422 | RS-422 Port |
PST_RS423 | RS-423 Port |
PST_RS449 | RS-449 Port |
PST_FAX | FAX Device |
PST_SCANNER | Scanner Device |
PST_NETWORK_BRIDGE | Unspecified network Bridge |
PST_LAT | LAT |
PST_TCPIP_TELNET | TCP/IP Telnet |
PST_X25 | X.25 |
dwProvCapabilities
Bitmask indicating the capabilities offered by the provider.
Flag | Meaning |
PCF_DTRDSR | DTR/DSR Supported |
PCF_RTSCTS | RTS/CTS Supported |
PCF_RLSD | Receive Line Signal Detect Supported |
PCF_PARITY_CHECK | Parity checking supported |
PCF_XONXOFF | XON/XOFF flow control supported |
PCF_SETXCHAR | Settable XON/XOFF supported |
PCF_TOTALTIMEOUTS | Total (elapsed) timeouts supported |
PCF_INTTIMEOUTS | Interval timouts supported |
PCF_SPECIALCHARS | Special character support provided |
PCF_16BITMODE | Special 16-bit mode supported |
dwSettableParams
Bitmask indicating the communications parameter that may be changed.
Flag | Meaning |
SP_PARITY | Parity |
SP_BAUD | Baud rate |
SP_DATABITS | Data bits |
SP_STOPBITS | Stop bits |
SP_HANDSHAKING | Handshaking (flow control) |
SP_PARITY_CHECK | Parity checking |
SP_RLSD | Receive-line signal detect |
dwSettableBaud
Bitmask indicating the baud rates which can be set. See dwMaxBaud for values.
wSettableData
Bitmask indicating the number of data bits.
Flag | Meaning |
DATABITS_5 | 5 data bits |
DATABITS_6 | 6 data bits |
DATABITS_7 | 7 data bits |
DATABITS_8 | 8 data bits |
DATABITS_16 | Special wide path via serial hardware lines |
wSettableStopParity
Bitmask indicating the stop and parity settings that may be selected.
Flag | 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 internal transmit buffer size. 0 indicates that the value is unavailable.
dwCurrentRxQueue
Specifies the internal receive buffer size. 0 indicates that the value is unavailable.
dwProvSpec1
Provider-specific data. Applications should ignore this field if they do not have intimate knowledge of its format.
dwProvSpec2
Provider-specific data. Applications should ignore this field if they do not have intimate knowledge of its format.
wcProvChar
Provider-specific data. Applications should ignore this field if they do not have intimate knowledge of its format.