This article is from the Programming VCOMM FAQ, by email@example.com (Taed Nelson) with numerous contributions by others.
The event type CN_RECEIVED should be CN_RECEIVE.
The use of EV_CTSS, EV_DSRS, EV_RingTe, and EV_RLSDS needs to be made clearer.
Is the use of "in Windows 3.1" to distinguish it from "in Windows 95", from
"in the hardware", or from "in the modem status shadow register"? Do
applications request these events in PortSetEventMask, or are they always
passed up when the change state event occurs?
It is not clear what the events EV_CTSS2, EV_DSRS2, and EV_RING2 are for.
They are also not defined in the vcomm.h file, and are not used in Serial.vxd.