Dans Win32 C existe-t-il un appel d'API pour vider (vider) le contenu d'un tampon de réception de port COM? Je pouvais seulement trouver des fonctions pour vider les tampons de transmission.Les communications de rinçage gèrent le tampon de réception?
Répondre
`PurgeComm()' peut supprimer tous les caractères dans un ou les deux tampons Tx et Rx, et annuler tout en attente de lecture et/ou d'écriture sur le port. Pour tout faire à un port, dire quelque chose comme:
PurgeComm(hPort, PURGE_RXABORT|PURGE_TXABORT|PURGE_RXCLEAR|PURGE_TXCLEAR)
Vous pouvez également vous assurer que vous avez manipulé ou ignoré explicitement toute erreur en attente sur le port ainsi, probablement avec ClearCommError()
.
ReadFile()
peut être utilisé pour vider uniquement le tampon Rx et FIFO en lisant tous les octets disponibles dans un tampon de déchets. Notez que vous devrez peut-être avoir des connaissances "non naturelles" afin de dimensionner correctement ce tampon, ou répétez l'appel ReadFile()
jusqu'à ce qu'il n'ait plus rien à dire. Cependant, la lecture de la mémoire tampon pour la purger n'aura de sens que si vous avez d'abord défini l'ensemble COMMTIMEOUTS de manière "rationnelle" ou si la lecture est bloquée jusqu'à ce que le tampon soit rempli.
rinçage un tampon de réception n'a pas de sens, pour obtenir des données sur un port COM tampon de réception il suffit d'appeler ReadFile sur la poignée au port com
FlushFileBuffers force synchroniquement la transmission des données dans les tampons de transmission
PurgeComm vide le tampon sans transmission ou réception (son un supprimer essentiellement)
- 1. Composant .NET Communications
- 2. Comment les adaptateurs de table générés par le concepteur gèrent les connexions
- 3. Obtenir le tampon de profondeur de QGLPixelBuffer
- 4. Accusés de réception et confirmation de réception dans le courrier PHP
- 5. Symbian: effacer le tampon de l'objet RSocket
- 6. Les feuilles de style de Qt gèrent-elles réellement les propriétés _dynamic_?
- 7. Débordement de tampon JSP
- 8. Réception de messages via un socket
- 9. Interface Java pour les communications Windows? (OLE, OPC, DDE)
- 10. Comment les versions .Net Framework gèrent-elles la compatibilité descendante?
- 11. Comment enregistrer le tampon de trame, puis le récupérer
- 12. Les onglets de tampon XEmacs n'affichent pas tous les tampons
- 13. Existe-t-il des modèles de conception pour gérer les communications de port série?
- 14. Quel type de méthode à utiliser pour les communications lors de la planification serveur flash multicouche
- 15. Comment gérer les données de mise en mémoire tampon lues sur le réseau?
- 16. Trouver toutes les méthodes qui gèrent les événements de formulaire en utilisant NDepend
- 17. Réception de messages MSMQ avec le service Windows
- 18. SDK IPhone Envoi/Réception de données avec le serveur
- 19. Ajout d'une couche TLS/SSL aux communications ..?
- 20. Quelles sont les bonnes références pour le développement .Net avec Office Communications Server?
- 21. récupérer les données depuis le tampon const int * const []
- 22. Tampon audio de forme d'onde
- 23. Les contrôleurs gèrent le flux des applications, alors où va ma logique métier?
- 24. Dupliquer un emplacement de réception dans Biztalk
- 25. Comment obtenir le descripteur de fichier du tampon en mémoire?
- 26. C# Entrée de réception console avec pipe
- 27. configurer l'emplacement de réception WCF dans Biztalk
- 28. Emacs enregistrer automatiquement sur le tampon de commutation
- 29. Comment les communs dbcp (et les autres pools de connexions) gèrent les instructions ouvertes et les resultsets?
- 30. Envoi et réception de données XML
Oui, mais si vous utilisez un fichier lu, vous dépendez de COMMTIMEOUTS, et ceux-ci ralentissent mon application. Il y a de la camelote dans les tampons que je ne veux pas lire. Si j'utilise le fichier de lecture, la lecture attendra, ou je devrai changer continuellement COMMTIMEOUTS ce que Windows fait si rapidement. –
les termes flush et dump dans context font référence au déplacement ou à l'enregistrement du buffer ne l'invalidant/purgeant pas, spécialement si l'on utilise flush avec le tampon de transmission, ce qui non seulement invalide le buffer mais garantit plutôt la transmission –