Je dois établir une connexion TCP avec une machine distante, mais avant cela, j'ai besoin de détecter si le port est utilisé par une autre application (s'il y a déjà une connexion sur ce port). En d'autres termes, je veux m'assurer qu'une seule application utilise le même port à la fois.Dans .NET comment détecter si le port TCP sur le serveur est ouvert et/ou actif?
Quelle est la manière de le faire dans .NET?
Une autre application, est un autre client qui utilise déjà ce port (très probablement il fonctionnera sur une autre machine). Le problème est que je veux avoir exclusivement une connexion au serveur et s'il y a déjà une connexion je veux que mon application invite l'utilisateur à ce sujet. – Vitalij
Ceci doit être géré par le serveur. Il n'y a rien au niveau TCP qui empêche plusieurs clients de se connecter à un port d'écoute. Le serveur doit donc garder une trace des clients et s'il y a plus d'un client, abandonner la connexion ou envoyer des informations au client pour l'informer qu'un autre client est déjà connecté. Tout cela dépendra bien sûr du protocole que vous utilisez. –
Le problème est que le serveur ne vous empêche pas de connecter plus d'un client. Et ce n'est pas une application client de serveur standard, en termes que mon serveur est un contrôleur de pompe. Et je ne peux pas changer ni les protocoles ni l'implémentation du serveur. – Vitalij