Feedback

VB - Lokale IP / IPs ermitteln

Veröffentlicht von am 22.11.2007
(1 Bewertungen)
2 Funktionen, die die Lokale(n) IP(s) ermitteln.
Falls nicht geben sie entweder 0.0.0.0 zurück oder einen selbstdefinierten IP-String.
GFU-Schulungen  [Anzeige]

C# Grundlagen

Die Schulung vermittelt Ihnen die Grundlagen von C# in der Arbeit mit Datentypen sowie bei Klassenbibliotheken. Sie lernen, mit Variablen umzugehen und deren verschiedene Formen zu konvertieren. 

VB.NET Aufbau

Sie verfügen nach der Schulung über fundierte Kenntnisse in der Arbeit mit objektorientierten Modellen in VB.NET und können wiederverwendbare Komponenten eigenständig erzeugen.

    ''' <summary>
    ''' Gibt ein Stringarray mit den Lokalen IPs zurück
    ''' </summary>
    ''' <param name="GenerateIP">wenn keine IP gefunden wird, eine genereiren?</param>
    Public Function GetLocalIPs(Optional ByVal GenerateIP As Boolean = False) As String()
        Dim StrngAr() As String
        Try
            Dim IP As Net.IPAddress
            Dim IPList As Array = Net.Dns.GetHostEntry(SystemInformation.ComputerName.ToString).AddressList
            If IPList.Length > 0 Then
                ReDim StrngAr(IPList.Length - 1)
                For i As Integer = 0 To IPList.Length - 1
                    IP = IPList.GetValue(i)
                    StrngAr(i) = IP.ToString
                Next
                Return StrngAr
            End If
        Catch ex As Exception
        End Try

        ReDim StrngAr(0)
        If GenerateIP = True Then
            StrngAr(0) = "192.168.1.1"
        Else
            StrngAr(0) = "0.0.0.0"
        End If

        Return StrngAr
    End Function

    ''' <summary>
    ''' Gibt einen String mit der ersten gefundenen gültigen IP zurück.
    ''' </summary>
    ''' <param name="GenerateIP">wenn keine IP gefunden wird, eine genereiren?</param>
    Public Function GetLocalIP(Optional ByVal GenerateIP As Boolean = False) As String
        Try
            Dim IP As Net.IPAddress
            Dim IPList As Array = Net.Dns.GetHostEntry(SystemInformation.ComputerName.ToString).AddressList
            If IPList.Length > 0 Then
                For i As Integer = 0 To IPList.Length - 1
                    IP = IPList.GetValue(i)
                    If IP.ToString <> "0.0.0.0" Then Return IP.ToString
                Next
            End If
        Catch ex As Exception
        End Try

        If GenerateIP = True Then
            Return "192.168.1.1"
        Else
            Return "0.0.0.0"
        End If
    End Function
Abgelegt unter lokale IP, IP auslesen, IP Adresse, IP.

1 Kommentare zum Snippet

Justus schrieb am 14.07.2009:
Hmm, es gibt da eine eigene Methode um IP-Adressen vom lokalen Rechner rauszubekommem. .Net stellt dazu die Funktion NetworkInterface.GetAllNetworkInterfaces() zur Verfügung. Ich hab das auf http://halloserv.de/blog/index.php?/archives/80-Lokale-IPs-rausfinden.html genauer beschrieben.
 

Logge dich ein, um hier zu kommentieren!