The TapiComm sample uses both the Telephony API and the Win32 Communications API to demonstrate one way to implement a very simple TTY application. While the user interface and TTY emulation are very rudimentary, the TAPI and comm modules are fairly complete.
// This Communications Component is implemented using separate Read and Write
// threads. Messages from the threads are posted to the Comm control which is
// an invisible window. To handle data from the comm port, simply
// attach a handler to OnReceiveData . There is no need to free the memory
// ...