C# で TCP ポートの可用性を確認する方法
C# で TcpClient を利用するか、ソケットへの接続を確立したい場合は、システム上の特定のポートが利用可能であることを事前に確認することが重要です。
ポートが開いている場合は、System.Net.NetworkInformation 名前空間内のオブジェクトを利用できます。
TcpConnectionInformation オブジェクトの配列へのアクセスを提供する IPGlobalProperties オブジェクトを取得します。これらのオブジェクトには、エンドポイントの IP とポートに関する情報が含まれています。このコレクションを詳しく調べることで、TcpClient に必要なポートが現在占有されているかどうかを識別できます。
コード スニペットの例を次に示します:
int port = 456; // Substitute with your desired port number bool isAvailable = true; // Assess active TCP connections on the system IPGlobalProperties ipGlobalProperties = IPGlobalProperties.GetIPGlobalProperties(); TcpConnectionInformation[] tcpConnInfoArray = ipGlobalProperties.GetActiveTcpConnections(); foreach (TcpConnectionInformation tcpi in tcpConnInfoArray) { if (tcpi.LocalEndPoint.Port == port) { isAvailable = false; break; } } // If isAvailable remains true after this loop, the port is free to use.
以上がTCP ポートは C# で使用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。