Maison >développement back-end >C++ >Comment puis-je vérifier la disponibilité du port TCP en C# ?

Comment puis-je vérifier la disponibilité du port TCP en C# ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-31 03:01:08539parcourir

How Can I Check for TCP Port Availability in C#?

Détermination de la disponibilité du port TCP en C# : un guide complet

Lors de l'utilisation d'un TcpClient en C#, il est crucial de déterminer la disponibilité d'un port spécifique sur votre machine. Ce guide explore la méthode la plus efficace pour effectuer cette vérification.

Pour vous assurer que votre TcpClient se connecte à un socket ouvert, vous devrez vérifier l'état de son port. L'espace de noms System.Net.NetworkInformation héberge une collection d'objets précieux à cet effet.

Exploiter IPGlobalProperties

L'objet IPGlobalProperties accorde l'accès à un tableau d'objets TcpConnectionInformation. Ces objets contiennent des données essentielles concernant les adresses IP et les ports des points de terminaison. En examinant ces objets, vous pouvez déterminer si le port souhaité est occupé.

Exemple de code : vérification de la disponibilité du port

Considérez l'extrait de code suivant :

int port = 456; // Substitute with your port value
bool isAvailable = true;

// Retrieve network information
IPGlobalProperties ipGlobalProperties = IPGlobalProperties.GetIPGlobalProperties();

// Examine all active TCP connections
TcpConnectionInformation[] tcpConnInfoArray = ipGlobalProperties.GetActiveTcpConnections();

foreach (TcpConnectionInformation tcpi in tcpConnInfoArray)
{
    if (tcpi.LocalEndPoint.Port == port)
    {
        isAvailable = false;
        break;
    }
}

// Logic based on isAvailable status
if (isAvailable)
{
    // Proceed with TcpClient creation
}

En exécutant ce code, vous déterminerez si le port TCP spécifié est disponible pour utilisation. S'il n'est pas occupé, vous pouvez procéder en toute confiance.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn