PowerLooser Geschrieben 9. September 2009 Geschrieben 9. September 2009 Hallo Leuts... ich habe mal wieder ein Problem mit meiner Configurationsroutine! Ich möchte eine Visualstudio 2008, VB.ne Routine schreiben, die es mir ermöglich unter "VISTA" das Internetprotokoll4 (IPv4) zu ändern. Ich möchte hier meien eigene statische IP ( nur als Beispiel: 192.168.0.1 und Subnetzmaske 255.255.255.0) festlegen. Da ich ständig die IP's ändern muß möchte ich es automatisieren. Bei XP konnte man mit einer bat. Datei ( pushd interface ... resell all etc.) das ganz gut realisieren. Leider ist einem ja die Möglichkeit in Vista genommen. Mein bisheriger Versuch ist leider fehl geschlagen hat jemand eine gute Idee? Private Sub cmdStaticIP_Click() ' Feste IP setzen Call Shell("netsh interface ip set address="LAN-VERBINDUNG" static 192.168.0.2 255.255.255.0", vbNormalFocus) ' |__ IP ___| | Subnetz- | ' |_ maske ___| End Sub Zitieren
PowerLooser Geschrieben 10. September 2009 Autor Geschrieben 10. September 2009 Ich habe jetzt ne Lösung für XP geschrieben, die auch funktioniert. Allerdings geht es nicht inVista!!! Dieses Mal habe ich es als WMI versucht Imports System.Management Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim SQLStatment As String Dim WMI As Object Dim Result As Object Dim Card As Object Dim IPsetzen As Long Dim sSubNetMask As String = Me.txtSubnetzXP.Text '255.255.255.0 Dim sNewIP As String = Me.txtIPXP.Text '192.168.0.10 WMI = GetObject("winmgmts:") SQLStatment = "SELECT * FROM win32_NetworkAdapterConfiguration WHERE IPEnabled = true" Result = WMI.execquery(SQLStatment) For Each Card In Result With Card If IsArray(.IPAddress) Then IPsetzen = .EnableStatic(New String() {sNewIP}, New String() {sSubNetMask}) End If End With Next End Sub Zitieren
PowerLooser Geschrieben 10. September 2009 Autor Geschrieben 10. September 2009 Hallo Leuts falls doch mal jemand in den Genuß kommt und in seinem Vista die IPv4 aus VB.net heraus ändern zu wollen, dann kann dieser Programmteil genommen werden! Bei mir hat er gut gefunzt ... Allerdings mußte ich mein Benutzerkonto lahm legen, da hier ständig "höhere Rechte" trotz Admin verlangt werden. Warum auch immer??? Dim LAN = Me.txtLAN.Text 'LAN-Verbindung (ist die Bezeichnung meiner LANVerbindung) Dim Ip = Me.txtIPVista.Text '192.168.0.20 Dim Subnetz = Me.txtVistaSubnetz.Text '255.0.0.0 Dim Gateway = Me.txtVistaGateway '192.168.12.10 Dim IpAdresse = " " & Ip & " " & Subnetz & " " & Gateway Dim test = "netsh interface ipv4 add address " & Chr(34) & LAN & Chr(34) & IpAdresse Call Shell("netsh interface ipv4 add address " & Chr(34) & LAN & Chr(34) & IpAdresse) Zitieren
Gateway_man Geschrieben 12. September 2009 Geschrieben 12. September 2009 Hm sieht wirklich interessant aus. Ja bei Vista ist die Rechtevergabe sehr streng gehalten worden. Bei meinen appz die ich für vista schreibe muss man bei erstmaliger nutzung seine usernamen sowie Adminpw eingeben damit das programm volle admin rechte hat . Umständlich aber irgendwo auch nachvollziehbar, da es eben simple Viren somit einen strich durch die rechnung macht. Lg Gateway Zitieren
RipperFox Geschrieben 18. September 2009 Geschrieben 18. September 2009 Bei XP konnte man mit einer bat. Datei ( pushd interface ... resell all etc.) das ganz gut realisieren. Leider ist einem ja die Möglichkeit in Vista genommen. Höh? Nur mal so - das mit netsh geht auch unter Vista und 7 - allerdings mit Rechtsklick und "Als Administrator ausführen" Das Problem mit der Benutzerkontensteuerung hast du so oder so.. Grüße Ripper Zitieren
TDM Geschrieben 18. September 2009 Geschrieben 18. September 2009 Batch C# Für was man Google alles so ge-/missbrauchen kann... :floet: Im Übrigen sieht der Code eher nach VB statt VB.Net aus. Call&Shell müffeln. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.