c# - 如何在 C# 控制台应用程序中执行 telnet

标签 c# console-application

在 C# 控制台应用程序需要执行 telnet 实用程序并知道所需的端口是否打开

   var ping = new Ping();
        var rply = ping.Send("192.168.1.117");
        if (rply.Status == IPStatus.Success)
        {
            Console.WriteLine("up");
            Console.WriteLine("Press any key to continue");
            Console.ReadKey(true);

          }
        else
        {
            Console.WriteLine("down");
            Console.WriteLine("Press any key to continue");
            Console.ReadKey(true);

我正在使用上面的代码来 ping 但对于 telnet 和端口我应该怎么做,以便在控制台应用程序中它应该执行 telnet 实用程序并让用户知道所需的端口已打开

最佳答案

一般来说,服务器管理员不喜欢你连接然后断开(查看端口是否打开的唯一真实方法)。但是,如果你想这样做,你可以这样做:

TcpClient tc = null;
try
{
    tc = new TcpClient("192.168.1.117", 23);
    // If we get here, port is open
} 
catch(SocketException se) 
{
    // If we get here, port is not open, or host is not reachable
}
finally
{
   if (tc != null)
   {
      tc.Close(); 
   }
}

关于c# - 如何在 C# 控制台应用程序中执行 telnet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12789830/

相关文章:

java - 使用 Java 和 gradle 的控制台应用程序

c# - 命名空间中不存在类型或命名空间名称 'GetName'

c# - 清除没有循环的 TableLayoutPanel 的列?

c# - NSubstitute 检查收到的电话不起作用

C# WCF 抽象?

Python。如何将文本作为超链接打印到控制台?

c# - 从 C# 中的标准 I/O 非阻塞读取

.net - 从 Dot Net MVC 4 异步执行批处理脚本

c# - 在 C# 中读取 FASTA 文件的最佳方式

c# - 两个数组合并成一个字典