Alle IP-Adresse rausfinden

  • Guten Morgen.

    Ist es mit AutoIT möglich alle IP-Adressen eines Netzwerks anzuzeigen?
    Und wenn ja, wie mache ich das am besten?

    LG und danke

    LG

    Philip

    Einmal editiert, zuletzt von n00b-it (10. August 2011 um 13:48)

  • Ich bekomme bei den zwei Befehlen StdoutRead() und bei StderrRead() immer einen Fehler angezeigt.

    [autoit]

    C:\Users\praktikant\Desktop\AutoIT\Netzwerk-Scanner\scanner.au3(52,49) : WARNING: $STDOUT_CHILD: possibly used before declaration.
    Run("cmd /c net view","",@SW_HIDE,$STDOUT_CHILD+
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\praktikant\Desktop\AutoIT\Netzwerk-Scanner\scanner.au3(52,63) : WARNING: $STDERR_CHILD: possibly used before declaration.
    Run("cmd /c net view","",@SW_HIDE,$STDOUT_CHILD+$STDERR_CHILD)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\Users\praktikant\Desktop\AutoIT\Netzwerk-Scanner\scanner.au3(53,12) : ERROR: StdoutRead() [built-in] called with wrong number of args.
    StdoutRead()
    ~~~~~~~~~~~^
    C:\Users\praktikant\Desktop\AutoIT\Netzwerk-Scanner\scanner.au3(54,12) : ERROR: StderrRead() [built-in] called with wrong number of args.
    StderrRead()
    ~~~~~~~~~~~^
    C:\Users\praktikant\Desktop\AutoIT\Netzwerk-Scanner\scanner.au3(55,13) : ERROR: TCPNameToIP() [built-in] called with wrong number of args.
    TCPNameToIP()

    [/autoit]

    LG

    Philip

  • Das dort oben ist lediglich ein Beispiel, wie das ganze ablaufen könnte.
    Das ist kein fertiges Skript! Ich kann dir keins schreiben weil ich kein Windows zur Hand hab. Wenn da irgendwo ein Fehler drinsteckt, ist dir auch nicht geholfen. Ausserdem wäre er Lerneffekt gleich null.

    Schlag die Funktionen in der Hilfe nach und du wirst deinem Ziel näher kommen.

  • Das mit dem Befehl habe ich jetzt hinbekommen, nur bei diesem StdoutRead und bei StderrRead komme ich nicht weiter.
    Das ist mein Code bis jetzt. Ich weiß echt nicht weiter.

    Spoiler anzeigen
    [autoit]

    Func Finde_IPs()
    Local $Cmd = Run(@ComSpec & " /c " & 'net view /all', "", @SW_MINIMIZE, $STDERR_CHILD, $STDIN_CHILD & $STDOUT_CHILD)
    Local $Cmd_IP
    While 1
    $Cmd_IP = StdoutRead($Cmd)
    If @error Then
    ExitLoop
    MsgBox(64, "Es ist ein Fehler aufgetreten.", $Cmd_IP)
    EndIf
    IniWrite("test.ini", "Name", "IP", $Cmd_IP)
    WEnd
    While 1
    $Cmd_IP = StderrRead($Cmd)
    If @error Then
    ExitLoop
    MsgBox(64, "Es ist ein Fehler aufgetreten.", $Cmd_IP)
    EndIf
    WEnd
    EndFunc

    [/autoit]

    LG

    Philip