'v2.5*************************************************** ' File: ip-aus-name.vbs ' Autor: dieseyer@gmx.de ' http://dieseyer.de ' ' Programm ermittelt die IP-Adressen aus einem PC-Name '******************************************************* ' Option Explicit ' Siehe http://dieseyer.de/dse-wsh-lernen.html#OptionExpl Set WSHShell = WScript.CreateObject("WScript.Shell") Set FSO = CreateObject("Scripting.FileSystemObject") Set WSHNet = WScript.CreateObject("WScript.Network") Ziel = "~tmp~.tmp" PCname = "MeinPC" PCname = InputBox("Von welchen PC soll die IP-Adr. ermittelt werden?", WScript.ScriptName, PCname) WSHShell.run ("%comspec% /c Ping " & PCname & " -n 1 -w 500 > " & Ziel), 0, True ' Ping nur einmal ausführen set WSHShell = nothing Set FileIn = fso.OpenTextFile(Ziel, 1 ) ' Datei zum Lesen öffnen TextX = FileIn.ReadAll ' alles lesen FileIn.Close Set FileIn = nothing if fso.FileExists(Ziel) Then fso.DeleteFile(Ziel), True ' Datei löschen TextX = Split(TextX, vbCRLF) ' alles gelesene in Zeilen aufteilen for i1 = 0 to ubound(TextX) ' jede Zeile überprüfen If InStr(UCase(TextX(i1)), "TTL=") Then ' ob TTL= enthalten ist, wenn ja (PING war erfolgreich) ' Bei der Ping-Ausgabe befindet sich hinter der IP-Adresse ein ":" - was links vom ":" steht, ist interessant EndIPadr = Mid(TextX(i1), 1, InStr(UCase(TextX(i1)), ":") -1 ) ' Bei der Ping-Ausgabe befindet sich vor der IP-Adresse ein " " - was rechst vom " " steht, ist die IP-Adr. IPadr = Mid(EndIPadr, InStrRev(EndIPadr, " ") +1 ) End If next if IPadr = "" then MsgBox "Von " & PCname & " konnte die IP-Adr. nicht ermittelt werden!", , WScript.ScriptName if not IPadr = "" then MsgBox PCname & " hat IP-Adr. " & IPadr , , WScript.ScriptName