vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: Ping wenn ost nicht aufglöst wird 
Autor: cola1
Datum: 23.01.05 10:30

Teil 2
Public Function Ping() As Long
 
        Dim intCount As Integer
        Dim aReplyBuffer(255) As Byte
 
        Dim intNBytes As Integer = 0
 
        Dim intEnd As Integer
        Dim intStart As Integer
 
        Dim epFrom As System.Net.EndPoint
        Dim epServer As System.Net.EndPoint
        Dim ipepServer As System.Net.IPEndPoint
 
                ipepServer = New System.Net.IPEndPoint(ipheHost.AddressList(0), _
                  0)
        epServer = CType(ipepServer, System.Net.EndPoint)
 
        epFrom = New System.Net.IPEndPoint(ipheLocalHost.AddressList(0), 0)
 
               DataSize = Convert.ToByte(DataSize + intBufferHeaderSize)
 
               If (DataSize Mod 2 = 1) Then
            DataSize += Convert.ToByte(1)
        End If
        Dim aRequestBuffer(DataSize - 1) As Byte
 
       aRequestBuffer(0) = Convert.ToByte(8) ' ECHO Request
 
                BitConverter.GetBytes(Identifier).CopyTo(aRequestBuffer, 4)
 
               BitConverter.GetBytes(Sequence).CopyTo(aRequestBuffer, 6)
 
               Dim i As Integer
        For i = 8 To DataSize - 1
            aRequestBuffer(i) = Convert.ToByte(i Mod 8)
        Next i
 
               Call CreateChecksum(aRequestBuffer, DataSize, aRequestBuffer(2), _
                 aRequestBuffer(3))
 
 
                Try
                        Dim sckSocket As New System.Net.Sockets.Socket( _
                                            Net.Sockets.AddressFamily.InterNetw_
                                            ork, _
                                            Net.Sockets.SocketType.Raw, _
                                            Net.Sockets.ProtocolType.Icmp)
            sckSocket.Blocking = False
 
            '            sckSocket.SendTo(aRequestBuffer, 0, DataSize, 
            ' SocketFlags.None, ipepServer)
 
                     intStart = System.Environment.TickCount
 
                       Do
                Application.DoEvents()
                Try
                    intNBytes = sckSocket.ReceiveFrom(aReplyBuffer, _
                      SocketFlags.None, epServer)
                Catch objErr As Exception
                End Try
            Loop Until (intNBytes > 0) Or ((System.Environment.TickCount - _
              intStart) > TimeOut)
 
                      If ((System.Environment.TickCount - intStart) > _
                        TimeOut) Then
                udtError.Number = PING_ERROR_TIME_OUT
                udtError.Description = "Time Out"
                Return (PING_ERROR)
            End If
 
                       intEnd = System.Environment.TickCount
 
            If (intNBytes > 0) Then
                               udtError.Number = (aReplyBuffer(19) * &H100) + _
                                 aReplyBuffer(20)
                Select Case aReplyBuffer(20)
                    Case 0 : udtError.Description = "Success"
                    Case 1 : udtError.Description = "Buffer too Small"
                    Case 2 : udtError.Description = "Destination Unreahable"
                    Case 3 : udtError.Description = "Dest Host Not Reachable"
                    Case 4 : udtError.Description = "Dest Protocol Not" & _
                      "Reachable"
                    Case 5 : udtError.Description = "Dest Port Not Reachable"
                    Case 6 : udtError.Description = "No Resources Available"
                    Case 7 : udtError.Description = "Bad Option"
                    Case 8 : udtError.Description = "Hardware Error"
                    Case 9 : udtError.Description = "Packet too Big"
                    Case 10 : udtError.Description = "Reqested Timed Out"
                    Case 11 : udtError.Description = "Bad Request"
                    Case 12 : udtError.Description = "Bad Route"
                    Case 13 : udtError.Description = "TTL Exprd In Transit"
                    Case 14 : udtError.Description = "TTL Exprd Reassemb"
                    Case 15 : udtError.Description = "Parameter Problem"
                    Case 16 : udtError.Description = "Source Quench"
                    Case 17 : udtError.Description = "Option too Big"
                    Case 18 : udtError.Description = "Bad Destination"
                    Case 19 : udtError.Description = "Address Deleted"
                    Case 20 : udtError.Description = "Spec MTU Change"
                    Case 21 : udtError.Description = "MTU Change"
                    Case 22 : udtError.Description = "Unload"
                    Case Else : udtError.Description = "General Failure"
                End Select
            End If
 
            Return (intEnd - intStart)
        Catch oExcept As Exception
            '
        End Try
 
    End Function
Ende Teil 2
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Ping wenn Host nicht aufglöst wird1.806cola122.01.05 19:34
Re: Ping wenn ost nicht aufglöst wird1.381cola122.01.05 20:12
Re: Ping wenn ost nicht aufglöst wird1.298ModeratorDaveS22.01.05 20:56
Ping wenn HOST nicht aufglöst wird1.572cola123.01.05 10:26
Re: Ping wenn HOST nicht aufglöst wird1.348ModeratorDaveS23.01.05 10:36
Das hab ich verstanden1.339cola123.01.05 11:14
Re: Das hab ich verstanden1.257ModeratorDaveS23.01.05 11:50
Stück weiter1.457cola123.01.05 13:14
Jetzt geht's1.527cola123.01.05 14:05
Re: Ping wenn HOST nicht aufglöst wird1.312cola123.01.05 10:36
Re: Ping wenn ost nicht aufglöst wird1.482cola123.01.05 10:30

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel