Funções Estendidas
Algumas funções de comunicação podem ser chamadas para um dispositivo usando a funçãoEscapeCommFunction. Essa função envia um código para direcionar o dispositivo para executar uma função estendida. Por exemplo, um aplicativo pode suspender a transmissão de caracteres com o código SETBREAK e retomar a transmissão com o código CLRBREAK. Essas operações específicas também podem ser iniciadas chamando as funções SetCommBreak e ClearCommBreak. EscapeCommFunction também podem ser usados para implementar o controle de modem manual. Por exemplo, os códigos CLRDTR e SETDTR podem ser usados para implementar o controle de fluxo DTR manual (pronto para terminal de dados). Observe, no entanto, que um erro ocorre se um processo usa EscapeCommFunction para manipular a linha DTR quando o dispositivo foi configurado para habilitar o handshaking DTR ou a linha RTS (solicitação para enviar) se o handshaking RTS estiver habilitado.
A função DeviceIoControl permite que um processo envie um código de função estendido diretamente para um driver de dispositivo especificado, fazendo com que o dispositivo execute uma determinada operação. DeviceIoControl fornece um dispositivo associado a recursos de comunicação sem suporte nas funções de comunicação serial padrão. Ele permite que um aplicativo configure um dispositivo usando parâmetros exclusivos para esse dispositivo, bem como chamar quaisquer funções específicas do dispositivo.