IP-Adresse ermitteln

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von MichaelMarga.

    IP-Adresse ermitteln

    Hallo,
    ich begrüße alle Mitglieder hier im Forum recht herzlich.
    Da ich nur Hobby- Programmierer bin (Anfänger) bin ich sehr froh an Hilfestellungen zu kommen.
    Hier mal meine 1. Frage:
    Ich habe aus einem Beispielprogramm einen Code herausgenommen um verschiedene Netzwerk-Adapter Eigenschaften auszulesen.

    Config.Items.Clear()

    ForEachMe.adapter In adapters
    Dim properties AsIPInterfaceProperties = adapter.GetIPProperties()
    If adapter.Description = ListBox1.Text Then
    Try
    lvwAddItem(Config, "Adapter", adapter.Description)
    lvwAddItem(Config,
    "Bezeichnung", adapter.Name)
    lvwAddItem(Config,
    "Speed", adapter.Speed / 1000000 & " Mbit/s")
    lvwAddItem(Config,
    "DNS Suffix", properties.DnsSuffix)
    lvwAddItem(Config,
    "Gateway Adresse", properties.GatewayAddresses(0).Address.ToString())
    lvwAddItem(Config,
    "DHCP Server Adresse", properties.DhcpServerAddresses(0).ToString())
    lvwAddItem(Config,
    "DNS aktiviert", properties.IsDnsEnabled)
    lvwAddItem(Config,
    "ID", adapter.Id)
    lvwAddItem(Config,
    "IPv6 Support", adapter.Supports(NetworkInterfaceComponent.IPv6))
    lvwAddItem(Config,
    "IPv4 support", adapter.Supports(NetworkInterfaceComponent.IPv4))
    lvwAddItem(Config,
    "DHCP aktiviert", adapter.GetIPProperties.GetIPv4Properties.IsDhcpEnabled.ToString)
    lvwAddItem(Config,
    "MAC Adresse", adapter.GetPhysicalAddress.ToString)
    lvwAddItem(Config,
    "IP Adresse", adapter.GetIPProperties.GetIPv4Properties.ToString)
    Catch ex AsException
    Config.Items.Clear()
    lvwAddItem(Config,
    "Adapter", adapter.Description)
    lvwAddItem(Config,
    "Bezeichnung", adapter.Name)
    lvwAddItem(Config,
    "------------------", "------------------------------")
    lvwAddItem(Config,
    "keine Verbindung", "bitte anderen Adapter auswählen")
    lvwAddItem(Config,
    Nothing, "bzw. Verbindung herstellen")
    EndTry
    EndIf

    Hier liegt der Fehler: lvwAddItem(Config, "IP Adresse", ..........
    Ich bekomme die per DHCP zugewiesene IP- Adresse nicht ausgelesen. Kennt sich da jemand mit aus?
    Gibt's eigentlich ein Schaubild der kompletten 'Netzwerk' Klasse zur besseren Übersicht?
    Vielen Dank ?(

    IP-Adresse ermitteln

    xtts02 schrieb:

    Wie sieht denn die Methode lvwAddItem aus, und wie lautet die Fehlermeldung?

    Hallo, es gibt keinen Fehler sondern die IP kommt nicht, siehe Anhang.

    Die Methode sieht so aus, aber das funktioniert so einwandfrei:

    Public
    Sub lvwAddItem(ByVal lvw AsListView, ByValParamArray Text() AsString)
    'hier wird die Routine zur Erzeugung der Zeilen und Spalten gemacht
    With lvw.Items
    .Add(
    NewListViewItem(Text))
    EndWith
    EndSub
    Bilder
    • Netzwerkadapter.png

      2,96 kB, 668×76, 260 mal angesehen
    Du musst schon die richtige Properties rauspicken. Beispiel:

    VB.NET-Quellcode

    1. For Each adapter In Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces
    2. Debug.Print(New String("="c, 50))
    3. Debug.Print("Name: " & adapter.Name)
    4. Debug.Print("Description: " & adapter.Description)
    5. Debug.Print("Type: " & adapter.NetworkInterfaceType.ToString)
    6. For Each addr In adapter.GetIPProperties.UnicastAddresses
    7. Debug.Print("--")
    8. Debug.Print("Address: " & addr.Address.ToString)
    9. Debug.Print("AddressFamily: " & addr.Address.AddressFamily.ToString)
    10. Next
    11. Next