繁体   English   中英

在 C# 中不访问互联网的情况下检查互联网连接的最佳方法是什么?

[英]What is the best way to check internet connection WITHOUT accessing the internet in C#?

我知道有很多方法可以做到这一点,我已经阅读了 SO 帖子。

我不想访问网站,如果有互联网,我也不想访问外部。

有没有办法通过检查网卡来检查互联网状态? 换句话说,当笔记本电脑显示网吧等或计算机本身显示“已连接”时。

这种方法会导致我的代码卡住:

private bool checkInternetStatus()
{
    try
    {
        using (var client = new WebClient())
            using (client.OpenRead("http://google.com/generate_204")) 
                online = true;
            //  Print("Connection estabished");
                return true; 
    }
    catch
    {
        online = false;
        Print("No internet connection");
        return false;
    }
}

您可以在 C# 中以编程方式使用 Ping。 不需要 web 客户端。

我认为这篇文章为您的问题提供了一些不同的答案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM