'v2.A*************************************************** ' File: PCmitDHCP.VBS ' Autor: dieseyer@gmx.de ' dieseyer.de ' ' !!! Nur WinNT/2k/XP !!! ' ' Testet, ob ein PC mit oder ohne DHCP arbeitet. ' Wird das Skript im LoginScript aufgerufen, gibt die ' LOG-Datei eine übersicht zu allen PC's. '******************************************************* Option Explicit ' Siehe http://dieseyer.de/dse-wsh-lernen.html#OptionExpl DIM Ziel, Text1, Text2, FileIn DIM WSHShell, FSO, WSHNet Set WSHShell = WScript.CreateObject("WScript.Shell") Set FSO = CreateObject("Scripting.FileSystemObject") Set WSHNet = WScript.CreateObject("WScript.Network") Ziel = wshnet.ComputerName & ".tmp" WshShell.run ("%comspec% /c ipconfig /all > " & Ziel),0,true Set FileIn = fso.OpenTextFile(Ziel, 1 ) ' Datei zum Lesen öffnen Text2 = "kein DHCP" Do While Not (FileIn.atEndOfStream) ' wenn Datei nicht zu ende ist, weiter machen Text1 = CStr( FileIn.Readline ) ' eine Zeile lesen if InStr( UCase ( Text1) , "DHCP") then if InStr( UCase ( Text1) , "JA") then Text2 = "DHCP" if InStr( UCase ( Text1) , "YES") then Text2 = "DHCP" End If Loop FileIn.Close Set FileIn = nothing If Text2 = "DHCP" then LogDatei wshnet.ComputerName & vbTab & "dyn. IP-Adr. / verwendet DHCP" If not Text2 = "DHCP" then LogDatei wshnet.ComputerName & vbTab & "stat. IP-Adr." 'folgende Zeile freigeben '******************************************************* if fso.FileExists(Ziel) Then fso.DeleteFile(Ziel), True ' Datei löschen wshshell.Popup "PC " & wshnet.ComputerName & " verwendet " & Text2 , 15, WScript.ScriptName '********************************* Sub LogDatei (LogTxt) '********************************* Dim FileOut, fso Set fso = WScript.CreateObject("Scripting.FileSystemObject") Set FileOut = fso.OpenTextFile( WScript.ScriptName & ".log", 8, true) ' FileOut.WriteLine (vbCRLF & Now() ) FileOut.WriteLine (now() & vbTab & LogTxt) FileOut.Close Set FileOut = Nothing End Sub ' LogDatei