资源库 发表于 2024-12-3 21:06:31

在Winform中如何判断网址是否能连接特定域名(无视自建CDN)

一:
1.定义NetworkUtils类

确保你已经在项目中定义了NetworkUtils类。如果还没有,你可以在你的WinForms项目中添加一个新的类文件,并命名为NetworkUtils.cs,然后添加以下代码:


using System;
using System.Net.Sockets;

public static class NetworkUtils
{
    public static bool CheckConnection(string hostname, int port)
    {
      try
      {
            using (TcpClient client = new TcpClient())
            {
                client.Connect(hostname, port); // 尝试连接到指定的主机和端口
                if (client.Connected)
                {
                  return true; // 如果连接成功,返回true
                }
            }
      }
      catch (SocketException)
      {
            // 捕获Socket异常,例如连接失败
      }
      return false; // 如果连接失败,返回false
    }
}如何调用?看下面
private void buttonCheckConnection_Click(object sender, EventArgs e)
{
    string hostname = "config.shequla.com";
    int port = 80; // 假设我们要检查的是HTTP服务的默认端口

    bool isConnected = YourNamespace.NetworkUtils.CheckConnection(hostname, port);

    if (isConnected)
    {
      MessageBox.Show("连接成功!");
    }
    else
    {
      MessageBox.Show("连接失败,请检查您的网络设置。");
    }
}
页: [1]
查看完整版本: 在Winform中如何判断网址是否能连接特定域名(无视自建CDN)