Проверка, подключен ли ПК к локальной сети или нет - PullRequest
7 голосов
/ 13 марта 2010

Я хочу задать 2 вопроса, и я был бы благодарен, если кто-то может ответить.

  1. Как проверить (с помощью C #), подключен ли ПК к локальной сети или нет?

  2. Как проверить (с помощью C #), подключен ли мой компьютер к локальной сети или нет

Ответы [ 3 ]

7 голосов
/ 26 марта 2010

Попробуйте

System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable()
3 голосов
/ 13 марта 2010

Вы хотите использовать Ping, чтобы проверить, подключен ли ПК к локальной сети. Вот образец:

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 );
}

Чтобы проверить, подключена ли ваша собственная машина, вы можете сделать то же самое с адресом, который, как вы знаете, должен разрешить, как, например, контроллер домена.

1 голос
/ 13 марта 2010

Используйте System.Net.NetworkInformation средство проверки связи пространства имен. Для более подробной информации эта ссылка

...