Anfänger will IPs auslesen

  • VB6

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von Marcus Gräfe.

    Anfänger will IPs auslesen

    Ich bin von C++ auf VB umgestiegen und möchte ein Programm schreiben, dass die IPs aller im Netzwerk vorhandener Computer ausliest. Ein paar einträge weiter unten ist ein Eintrag der die Namen aufgibt (hab's ausprobiert), ich aber möchte die IPs haben.
    Geht das???
    Dazu brauchst du folgenden Code (den musst du zusammen mit dem von dir gefundenen Code aus dem anderen Topic benutzen):

    <pre>
    '-----------------------------------------------------------------
    ' API Deklarationen um IP aus Hostnamen zu ermitteln
    '-----------------------------------------------------------------

    Private Declare Sub RtlMoveMemory Lib "kernel32" (hpvDest As Any, ByVal hpvSource As Long, ByVal cbCopy As Long)

    Private Declare Function GetHostByName Lib "wsock32.dll" Alias "gethostbyname" (ByVal HostName As String) As Long

    Private Type HOSTENT2
    hName As Long
    hAliases As Long
    hAddrType As Integer
    hLength As Integer
    hAddrList As Long
    End Type

    Public Function GetIPFromHostName(HostName As String) As String
    Dim HE_Adr As Long
    Dim HE As HOSTENT2
    Dim IP_Adr As Long
    Dim temp_ip_address() As Byte
    Dim i As Integer
    Dim strIPAdr As String

    HE_Adr = GetHostByName(HostName)
    If HE_Adr <> 0 Then
    RtlMoveMemory HE, HE_Adr, LenB(HE)
    RtlMoveMemory IP_Adr, HE.hAddrList, 4
    ReDim temp_ip_address(1 To HE.hLength)
    RtlMoveMemory temp_ip_address(1), IP_Adr, HE.hLength
    For i = 1 To HE.hLength
    strIPAdr = strIPAdr & temp_ip_address(i) & "."
    Next
    strIPAdr = Left$(strIPAdr, Len(strIPAdr) - 1)
    GetIPFromHostName = strIPAdr
    Else
    GetIPFromHostName = vbNullString
    End If
    End Function
    </pre>
    Besucht auch mein anderes Forum:
    Das Amateurfilm-Forum

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    Dir fehlt noch diese Deklaration:

    Private Declare Function GetHostByName Lib "wsock32.dll" Alias "gethostbyname" (ByVal HostName As String) As Long

    Besucht auch mein anderes Forum:
    Das Amateurfilm-Forum