Альтернатива команды пинг - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Всем привет! Нужно проверять доступность хоста в локальной сети при этом не использовать пинг(ICMP). Как-то давно видел пример кода и кажется это была именно альтернатива пингу. Но вот не могу найти битую неделю =( Может кто подскажет как еще можно проверить доступность хоста, при это с выставлением таймаута, чтобы долго не ожидать ответа? Заранее спасибо за любую помощь!
причина этого нуждика описана вот здесь

Решение задачи: «Альтернатива команды пинг»

textual
Листинг программы
  1.     Function checkIPExist(ByVal addr As String, ByVal por As String, ByVal tim As Double) As Boolean
  2.         ' addr - ip адрес или сетевое имя
  3.         ' por - номер порта
  4.         ' tim - время ожидания отклика  в секундах
  5.         Dim ipor As Integer
  6.         ipor = CInt(por)
  7.         Dim HostExist As Boolean = False
  8.  
  9.         Dim tcpClient = New Net.Sockets.TcpClient
  10.         Dim ar = tcpClient.BeginConnect(addr, por, Nothing, Nothing)
  11.         Try
  12.             If Not ar.AsyncWaitHandle.WaitOne(TimeSpan.FromSeconds(tim), False) Then
  13.                 tcpClient.Close()
  14.                 'MsgBox("offline")
  15.                 HostExist = False
  16.             Else
  17.                 tcpClient.EndConnect(ar)
  18.                 tcpClient.Close()
  19.                 'MsgBox("online")
  20.  
  21.             End If
  22.         Catch ex As Net.Sockets.SocketException
  23.             If ex.ErrorCode = 10061 Then
  24.                 HostExist = True
  25.             End If
  26.             ' MsgBox("offline" & vbNewLine & ex.Message)
  27.         Catch ex As Exception
  28.             ' MsgBox("offline" & vbNewLine & ex.Message)
  29.         End Try
  30.         ar.AsyncWaitHandle.Close()
  31.         Return HostExist
  32.     End Function

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.667 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут