Netzwerkverbindung löschen

  • Hallo zusammen

    Ich muss eine Netzwerkverbindung via Script löschen..

    Laut freund Google müsste das auch ohne Auto-It gehen

    Zitat

    This is how to Disable and enable an interface using Netsh

    netsh int set interface name="Local Area Connection 3" admin=disabled
    netsh int set interface name="Local Area Connection 3" admin=enabled


    Aber ich renne immer in einen Syntax Fehler.. Microsoft bietet noch ein Tool namens Devcon, was ich aber ungern verwenden würde...

    Kennt ihr einen eleganten weg? Bevorzugt wäre eine Auto-It Lösung, aber so langsam bin ich schon froh, wenn ich das überhaupt hinbekomme, ohne devcon.exe


    Danke euch,

    Surfy

  • Hi,
    möchtest du die Verbindung in der Netzwerkverwaltung löschen oder nur deaktivieren?
    Wichtig ist auch das Betriebssystem. Es gibt Unterschiede zwischen Vista und XP

    Zum löschen muß das so aussehen.

    Spoiler anzeigen
    Code
    netsh delete interface name="Local Area Connection 3"

    MfG
    Der_Doc

  • Irgendwas scheint am Syntax geändert zu haben, hab nun schon sicher 10 Seiten gefunden, die das Beispielhaft beschreiben, aber alles führt zu einem Syntaxfehler X(

    Am weitesten war ich mal hier:


    Zitat

    netsh int set interface name="VMware Network Adapter VMnet1" admin=disabled >c:\install\log.txt

    Ergebniss:


  • Diese Script schaltet die Lan-Verbindung bei jedem Start aktiv bzw inaktiv:

    Spoiler anzeigen
    [autoit]

    ; Damit User unter Windows XP eine Netzwerkverbindung aktivieren
    ; bzw. deaktivieren dürfen, müssen sie Mitglied in der Gruppe
    ; "Netzwerkkonfigurations-Operatoren" sein !

    [/autoit] [autoit][/autoit] [autoit]

    $nameLanConnection = "LAN-Verbindung"; Name des Adapters
    $oLanConnection = ""

    [/autoit] [autoit][/autoit] [autoit]

    if @OSType<>"WIN32_NT" then
    Msgbox(0,"","Dieses Script benötigt Windows 2000 oder höher")
    exit
    endif

    [/autoit] [autoit][/autoit] [autoit]

    Select
    Case StringInStr("0409,0809,0c09,1009,1409,1809,1c09,2009,2409,2809,2c09,3009,3409", @OSLang) ; English (United States)
    $strEnableVerb = "En&able"
    $strDisableVerb = "Disa&ble"
    if @OSVersion="WIN_2000" then
    $strFolderName = "Network and Dial-up Connections"
    else
    $strFolderName = "Network Connections" ; Windows XP
    endif

    Case StringInStr("0407", @OSLang); Deutsch
    $strEnableVerb = "&Aktivieren"
    $strDisableVerb = "&Deaktivieren"
    if @OSVersion="WIN_2000" then
    $strFolderName = "Netzwerk- und DFÜ-Verbindungen"
    else
    $strFolderName = "Netzwerkverbindungen" ; Windows XP
    endif

    [/autoit] [autoit][/autoit] [autoit]

    EndSelect

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ;Virtueller Ordner (Wert 3) enthält die Systemsteuerung
    Const $ssfCONTROLS = 3

    [/autoit] [autoit][/autoit] [autoit]

    $ShellApp = ObjCreate("Shell.Application")
    $oControlPanel = $shellApp.Namespace($ssfCONTROLS)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    ; Finde 'Netzververbindungen' unter den Systemsteuerungen
    $oNetConnections=""
    For $FolderItem in $oControlPanel.Items
    If $FolderItem.Name = $strFolderName then
    $oNetConnections = $FolderItem.GetFolder
    Exitloop
    Endif
    Next
    If not IsObj($oNetConnections) Then
    Msgbox(0,"Fehler","Die Steuerung " & $strFolderName & " kann nicht gefunden werden."
    Exit
    EndIf

    ; Finde die gesuchte LAN-Verbindung
    For $FolderItem In $oNetConnections.Items
    If StringLower($FolderItem.Name) = StringLower($nameLanConnection) Then
    $oLanConnection = $FolderItem
    Exitloop
    EndIf
    Next
    If not IsObj($oLanConnection) Then
    Msgbox(0,"Fehler","Die Verbindung " & $nameLanConnection & " kann nicht gefunden werden.")
    Exit
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    $bEnable = true
    $oEnableVerb = ""
    $oDisableVerb = ""

    [/autoit] [autoit][/autoit] [autoit]

    For $Verb In $oLanConnection.Verbs
    If $Verb.Name = $strEnableVerb Then
    $oEnableVerb = $Verb
    $bEnable = false
    EndIf
    If $Verb.Name = $strDisableVerb Then
    $oDisableVerb = $Verb
    EndIf
    Next

    [/autoit] [autoit][/autoit] [autoit]

    If $bEnable then
    ; deaktivieren
    $oDisableVerb.DoIt
    else
    ; aktivieren
    $oEnableVerb.DoIt
    TrayTip("",$nameLanConnection & " wurde aktiviert !",3)
    Sleep(3000)
    Endif

    [/autoit]

    Zur Nutzung dieses Forum's, ist ein Übersetzer für folgende Begriffe unerlässlich:

    "On-Bort, weier, verscheiden, schädliges, Butten steyling, näckstet, Parr, Porblem, scripe, Kompletenz, harken, manuel zu extramieren, geckukt, würglich, excell, acces oder Compilevorgeng"

  • Danke für den Script! Muss man noch etwas beachten, ausser den richtigen Namen der Netzwerkverbindung einzutragen?

    Übrigens ist die Firewall auf die Verbindung aktiviert, vielleicht macht das auch noch einen unterschied?

    Der Script läuft, bewirkt aber nichts bis anhin ;(

  • Habe gerade noch das entdeckt:

    netsh interface set interface name="VMware Network Adapter VMnet1" admin=disabled
    netsh interface set interface name="VMware Network Adapter VMnet8" admin=disabled

    http://anotherlab.rajapet.net/2005/12/disabl…k-adapters.html

    Ich muss meine Kiste erstmal neu Aufsetzen, der Befehl: "devcon delete net="

    hat mal eben alle Netzwerkconnections gekillt ^^ Mit Devcon gehts sicher, aber ich hoffe noch immer auf eine Lösung mit netsh :thumbup:

    Mit Devcon lautet die korrekte Zeile:

    Zitat

    devcon remove *vmnet*

  • Es wird wohl auch noch niemand eine Plug'nPlay Netzwerkkarte dauerhaft gelöscht bekommen haben, oder ?

    Zur Nutzung dieses Forum's, ist ein Übersetzer für folgende Begriffe unerlässlich:

    "On-Bort, weier, verscheiden, schädliges, Butten steyling, näckstet, Parr, Porblem, scripe, Kompletenz, harken, manuel zu extramieren, geckukt, würglich, excell, acces oder Compilevorgeng"

  • Micha_he: doch, mit devcon geht das dauerhaft.

    @doc: Wenn ich mal einen weg gefunden habe, der vom Syntax her das "Disable" auch durchführt, traue ich mir dann durchaus zu, dieses auch auf Delete umzufriemeln ;( Denn auch das Disable ging bisher mit Netsh nicht :(

    Komandozeilenbefehl für Vmware gibts aber nur unter Unix & CO

    Einmal editiert, zuletzt von Surfy (17. Februar 2010 um 13:22)