Fonctions étendues
Certaines fonctions de communication peuvent être appelées pour un appareil à l’aide de la fonction EscapeCommFunction . Cette fonction envoie un code pour indiquer à l’appareil d’exécuter une fonction étendue. Par exemple, une application peut suspendre la transmission de caractères avec le code SETBREAK et reprendre la transmission avec le code CLRBREAK. Ces opérations particulières peuvent également être démarrées en appelant les fonctions SetCommBreak et ClearCommBreak . EscapeCommFunction peut également être utilisé pour implémenter le contrôle manuel du modem. Par exemple, les codes CLRDTR et SETDTR peuvent être utilisés pour implémenter le contrôle de Flow manuel DTR (Data-Terminal Ready). Notez, toutefois, qu’une erreur se produit si un processus utilise EscapeCommFunction pour manipuler la ligne DTR lorsque l’appareil a été configuré pour activer le protocole de liaison DTR, ou la ligne RTS (demande d’envoi) si le protocole RTS est activé.
La fonction DeviceIoControl permet à un processus d’envoyer un code de fonction étendue directement à un pilote de périphérique spécifié, ce qui amène l’appareil à effectuer une opération donnée. DeviceIoControl fournit un appareil associé à des fonctionnalités de ressources de communication non prises en charge par les fonctions de communication série standard. Il permet à une application de configurer un appareil à l’aide de paramètres propres à cet appareil, ainsi que d’appeler toutes les fonctions spécifiques à l’appareil.