2012-01-27 6 views
0

Я получаю ошибку System.Net.NetworkInformation.PingException для следующего кода.Как обрабатывать исключение ping в C#?

Ping ping = new Ping(); 
PingReply stats = ping.Send(IPAddress.Parse("8.8.4.4")); 
if (stats.Status == IPStatus.Success) 
{ 
    if(net) 
     textBox1.Text = "connected"; 
    else 
     textBox1.Text="Not connected"; 
} 

Может кто-нибудь сказать, что здесь не так?

Примечание: ошибка возникает в строке 2

+5

Есть ли какие-либо сведения об исключении? – GrandMasterFlush

+0

Посмотрите сообщение в 'Exception', оно должно предоставить вам больше информации. Кроме того, какая строка является ошибкой? –

+0

@SamuelSlade on line 2 – shiva

ответ

2

Для обработки исключений вставить код в попытке поймать заявление, как это:

try { 
    //code here 
} catch (PingException e) { 
    //Error handling 
} 
+0

интересно, я положил его именно там, и он не попался! любое мнение по этому поводу? –

1

Пер с documentation for Ping.Send:

PingException
Исключение было отправлено при отправке или получении сообщений ICMP. См. Внутреннее исключение для точного исключения, которое было выбрано.

Итак, вам нужно отладить это и проверить значение внутреннего исключения, чтобы выяснить, почему . Мы не можем это сделать для вас.

+6

Плохая вещь о PingException: большинство вещей может быть легко в результатах. Почему PingReply должен иметь результат для DestinationUnreachable, если исключение исключено, что удаленный компьютер недоступен ... – Offler

Смежные вопросы