Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 检查电脑是否连接到局域网上_C#_.net_Networking - Fatal编程技术网

C# 检查电脑是否连接到局域网上

C# 检查电脑是否连接到局域网上,c#,.net,networking,C#,.net,Networking,我想问两个问题,如果有人能回答,我将不胜感激 如何(使用C#)检查电脑是否连接到局域网 如何检查(使用C#)我的电脑是否已连接到局域网 使用System.Net.NetworkInformation命名空间的ping功能。有关更多信息,请参阅您想使用Ping检查PC是否连接到LAN。以下是一个示例: var ping = new Ping(); var options = new PingOptions { DontFragment = true }; //just need some dat

我想问两个问题,如果有人能回答,我将不胜感激

  • 如何(使用C#)检查电脑是否连接到局域网

  • 如何检查(使用C#)我的电脑是否已连接到局域网


  • 使用
    System.Net.NetworkInformation
    命名空间的ping功能。有关更多信息,请参阅

    您想使用Ping检查PC是否连接到LAN。以下是一个示例:

    var ping = new Ping();
    var options = new PingOptions { DontFragment = true };
    
    //just need some data. this sends 10 bytes.
    var buffer = Encoding.ASCII.GetBytes( new string( 'z', 10 ) );
    var host = "127.0.0.1";
    
    try
    {
        var reply = ping.Send( host, 60, buffer, options );
        if ( reply == null )
        {
            MessageBox.Show( "Reply was null" );
            return;
        }
    
        if ( reply.Status == IPStatus.Success )
        {
            MessageBox.Show( "Ping was successful." );
        }
        else
        {
            MessageBox.Show( "Ping failed." );
        }
    }
    catch ( Exception ex )
    {
        MessageBox.Show( ex.Message );
    }
    
    要检查您自己的计算机是否已连接,您可以对您知道应该解析的地址执行相同的操作,例如域控制器。

    试试看

    System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable()
    

    请看--如果这不能完全回答您的问题,您可能希望对其进行编辑,使问题1和问题2之间的区别变得明显…@Thomas即使我将lan电缆从PC中移除,此代码仍能成功发送ping。这是因为我仅出于说明目的使用了127.0.0.1。你需要用网络上的一个IP来替换这个IP,比如说域控制器。它不是应该说,如果你有任何网络连接吗?