vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

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

VB.NET - Fortgeschrittene
Ping Exception 
Autor: Hagen
Datum: 14.03.07 12:40

Hallo,
beim anpingen von Rechnern habe ich folgendes Problem:
wenn der angesprochene Rechner nicht im Netzwerk gefunden wird, kommt sofort eine Ping Exception - ich habe aber eigentlich eine Statusmedlung erwartet.
Habt ihr einen Hinweis für mich?

Gruß
Michael

    Public Sub pingme(ByVal s As String)
        Dim pingsender As Ping = New Ping
        Dim reply As PingReply
 
        Try
            reply = pingsender.Send(s)
 
            Select Case reply.Status
                Case IPStatus.Success
                    ListView1.Items.Add("Address: " + reply.Address.ToString)
                    ListView1.Items.Add("RoundTrip time: " + _
                      reply.RoundtripTime.ToString)
                    ListView1.Items.Add("Time to live: " + _
                    reply.Options.Ttl.ToString)
                    ListView1.Items.Add("Don't fragment: " + _
                    reply.Options.DontFragment.ToString)
                    ListView1.Items.Add("Buffer size: " + _
                    reply.Buffer.Length.ToString)
                    ListView1.Items.Add("Status: " + reply.Status.ToString)
                    ListView1.Refresh()
                Case Else
                    MessageBox.Show(reply.Status.ToString)
            End Select
        Catch ex As PingException
            MessageBox.Show(ex.InnerException.Message.ToString)
        End Try
 
    End Sub
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Ping Exception 
Autor: Melkor
Datum: 14.03.07 15:42

Exceptions in .Net werden mit Try/Catch abgefangen.

Those people who think they know everything are a great annoyance to those of us who do - Isaac Asimov

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Status der ICMP-Echoabfrage 
Autor: Hagen
Datum: 15.03.07 06:51

Hallo,

das mache ich hier ja auch
Ich habe aber angenommen, dass es keine Exception gibt, sondern von
IPStatus.Success
z.B. ein
IPStatus.DestinationHostUnreachable
zurückgegeben würde.
Es geht mir hier also nicht um die Fehlerbehandlung sondern um den Status der ICMP-Anfrage.

Gruß
Michael
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Ping Exception 
Autor: Snoopy
Datum: 15.03.07 07:14

Du musst prüfen, ob reply.Address Nothing ist.
If reply.Address isNot Nothing then
   ' Items füllen
 
endif
Gruß

Gru?
---------------------------------------------------
Snoopy sagt - vb@rchiv find ich gut...
Schon gesehen? OSMMapViewer V2 Control

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Ping Exception 
Autor: Hagen
Datum: 15.03.07 11:01

Ahja - aber die Exception tritt bei mir ja bereits vorher auf:
reply = pingsender.Send(s)
If reply.Address IsNot Nothing Then
        'Mach irgendwas
End If
Bis zur If-Abfrage komme ich also gar nicht (der Fehler kommt bei der Zuweisung "Reply=..."). Und wenn ich bereits in der Ping-Exception bin, habe ich nichts mehr von der Information...

Michael
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Ping Exception 
Autor: Snoopy
Datum: 15.03.07 11:30

Was für eine Exception wirft er denn?

Gru?
---------------------------------------------------
Snoopy sagt - vb@rchiv find ich gut...
Schon gesehen? OSMMapViewer V2 Control

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Ping Exception 
Autor: Hagen
Datum: 19.03.07 06:30

Eine PingException "Der angegebene Host ist unbekannt".
Aber dann sollte er doch bei
IPStatus.Success
ein
IPStatus.DestinationHostUnreachable
werfen - oder habe ich das falsch verstanden?
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Ping Exception 
Autor: Snoopy
Datum: 19.03.07 18:23

Ich habe mal dein Codesnippet getestet. Funzt einwandfrei...
Getestet mit einer IP aus dem LAN und einer Webadresse.
Imports System.Net.NetworkInformation
 
Public Class Form1
 
   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _
     System.EventArgs) Handles Button1.Click
      Me.pingme(TextBox1.Text.Trim)
   End Sub
 
   Public Sub pingme(ByVal s As String)
      Dim pingsender As Ping = New Ping
      Dim reply As PingReply
 
      Try
         reply = pingsender.Send(s)
 
         Select Case reply.Status
            Case IPStatus.Success
               Label1.Text = reply.Status.ToString
            Case Else
               MessageBox.Show(reply.Status.ToString)
         End Select
      Catch ex As PingException
         MessageBox.Show("Inner Exception: " & ex.InnerException.Message)
      End Try
 
   End Sub
 
End Class
VS2005

Gruß

Gru?
---------------------------------------------------
Snoopy sagt - vb@rchiv find ich gut...
Schon gesehen? OSMMapViewer V2 Control

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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-2024 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