![]() |
![]() |
|
![]() |
![]() |
|
Programmierung Rat & Tat für Programmierer |
|
Themen-Optionen | Ansicht |
![]() |
#1 |
Newbie
![]() Registriert seit: 08.09.2003
Beiträge: 1
|
![]() Hallo,
ich habe mir ein Script geschrieben um einige Netzwerkeinstellungen zu ändern DHCP, statische IP,... so schaut das Script aus: Code:
' IP.vbs cname = "" ' Name des Zielrechners (leer = lokal) strIP = "10.0.2.5" ' statische Wunschadresse kann hiervorgegeben werden strSubnet = "255.255.255.0" ' ebenso die Wunsch-Sbunetmaske strGateway = "10.0.0.1" strDNS = "195.3.96.68" strTitel = "ip" Set wmi = GetObject("winmgmts:\\" & cname) strFrage = "Was soll ich tun?" & vbCrLf strFrage = strFrage & vbCrLf & "1: DHCP aktivieren" strFrage = strFrage & vbCrLf & "2: statische Adresse setzen" strFrage = strFrage & vbCrLf & "3: komplette Konfiguration anzeigen" tuwas = inputBox(strFrage & vbCrLf, strTitel, "Bitte Ziffer eingeben!") strMeldung = "" select case tuwas case 1 DHCPein case 2 statAdr case 3 infoKomplett end select strMeldung = strMeldung & vbCrLf & vbCrLf & "--> Aktuelle Einstellungen:" & vbCr & ReportIPSettings(wmi) msgBox strMeldung, , strTitel sub DHCPein() ' Funktion: ' Eingabeparameter: ' Kommentar: ' DHCP aktivieren If EnableDHCP(wmi) Then strMeldung = "DHCP aktiviert!" wscript.sleep 1000 Else strMeldung = "DHCP konnte nicht aktiviert werden." End If end sub sub statAdr() ' Funktion: ' Eingabeparameter: ' Kommentar: strIP = inputBox("Welche IP-Adresse?",strTitel,strIP) strSubnet = inputBox("Welche Subnet-Mask?",strTitel, strSubnet) strGateway = inputBox ("Welchen Gateway?" ,strTitel, strGateway) strDNS = inputBox ("Welchen DNS Server?" ,strTitle, strDNS) if EnableStatic(wmi, strIP, strSubnet, strGateway, strDNS) Then strMeldung = "Statische Adresse übernommen!" Else strMeldung = "IP konnte nicht statisch gesetzt werden." End If end sub Function EnableDHCP(wmiobj) wql = "select * from win32_NetworkAdapterConfiguration where IPEnabled = true" Set ergebnis = wmiobj.ExecQuery(wql) For each karte in ergebnis If IsArray(karte.IPAddress) Then status = karte.EnableDHCP EnableDHCP = (status = 0) End If Next End Function Function EnableStatic(wmiobj, ip, subnet, gateway, dns) wql = "select * from win32_NetworkAdapterConfiguration where IPEnabled = true" Set ergebnis = wmiobj.ExecQuery(wql) For each karte in ergebnis If IsArray(karte.IPAddress) Then status = karte.EnableStatic(Array(ip), Array(subnet), Array(gateway), Array(dns)) EnableStatic = (status = 0) End If Next End Function Function ConvertToStatic(wmiobj) wql = "select * from win32_NetworkAdapterConfiguration where IPEnabled = true" Set ergebnis = wmiobj.ExecQuery(wql) For each karte in ergebnis If IsArray(karte.IPAddress) Then If karte.DHCPEnabled = False Then ConvertToStatic = False Exit Function End If status = karte.EnableStatic(Array(karte.IPAddress(0)), Array(karte.IPSubnet(0)), Array(karte.DefaultIPGateway(0)), Array(karte.IPDNS(0)) ) ConvertToStatic = (status = 0) End If Next End Function Function ReportSettings(wmiobj) wql = "select * from win32_NetworkAdapterConfiguration where IPEnabled = true" Set ergebnis = wmiobj.ExecQuery(wql) For each karte in ergebnis If IsArray(karte.IPAddress) Then ReportSettings = ReportSettings & karte.getObjectText_ & vbCrLf End If Next End Function Function ReportIPSettings(wmiobj) wql = "select Caption, DHCPEnabled, DHCPLeaseObtained, DHCPLeaseExpires, DHCPServer, IPAddress, IPSubnet, DefaultIPGateway, DNSServerSearchOrder, DNSDomain, MACAddress from win32_NetworkAdapterConfiguration where IPEnabled = true" Set ergebnis = wmiobj.ExecQuery(wql) For each karte in ergebnis If IsArray(karte.IPAddress) Then ReportIPSettings = ReportIPSettings & karte.getObjectText_ & vbCrLf End If Next End Function sub infoKomplett() ' Funktion: ' Eingabeparameter: ' Kommentar: strText = ReportSettings(wmi) strText = Replace(strText, vbLf, " " & vbCrLf) Set objExplorer = WScript.CreateObject("InternetExplorer.Application") objExplorer.Navigate "about :blank" objExplorer.ToolBar = 0 objExplorer.StatusBar = 0 objExplorer.Width=500 objExplorer.Height = 400 objExplorer.Left = 0 objExplorer.Top = 0 objExplorer.Visible = 1 objExplorer.document.writeln "<html><title>" & strTitel & "</title><body><p style=""font-family:sans-serif;font-size:9pt;"">schließen Netzwerkkarte: Komplette Information " & strText & "</P></body></html>" wscript.quit end sub auf DHCP setzen funktioniert ohne Probleme Wenn ich die statische IP setzen will wird der Gateway und der DNS Server nicht in Windows übergeben. Das heist wenn ich dann über ipconfig mir anschaue ob der Gateway oder der DNS Server eingetrage ist. Steht dort nicht der Gateway oder der DNS Server. Ich würde mich sehr über hilfe sehr freuen. |
![]() |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|