Netzwerkadapter deaktivieren

  • hallo leute
    ihr kennt doch sicher die funktion deaktivieren von netzwerkadaptern
    also ich wollte ein proggi machen, dass den adapter per hotkey an und abschaltet nun gibts nur ein problem wie kann ich den adapter deaktivieren???

  • Oder du machst es über die WMI

    Spoiler anzeigen
    [autoit]

    ; #FUNCTION# ======================================================================================
    ; Name .............: _WinWMI_NetworkAdapter_SetState()
    ; Description ......: Enables/Disables and Networkadapter
    ; Syntax ...........: _WinWMI_NetworkAdapter_SetState($sAdapterName, $sSetState, $sComputer)
    ; Parameters .......: Const $sAdapterName - Adaptername
    ; Const $sSetState - Status
    ; Const $sComputer - [optional] Target Computer (default:"127.0.0.1")
    ; Return values ....: Success - 1
    ; Failure - 0 Sets @error to:
    ; |-1 Connection failed
    ; |-2 WMI Class not found/no access
    ; |-3 Enable/Disable failed
    ; Author ...........: Mahagon
    ; Link .............: http://msdn.microsoft.com/en-us/library/…6(v=VS.85).aspx
    ; =================================================================================================

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

    Local Const $wbemFlagReturnImmediately = 0x10, $wbemFlagForwardOnly = 0x20

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

    _WinWMI_NetworkAdapter_SetState("LAN-Verbindung 2", "Disable")

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

    Func _WinWMI_NetworkAdapter_SetState(Const $sAdapterName, Const $sSetState, Const $sComputer = "127.0.0.1")
    $oWMI = ObjGet("winmgmts:{impersonationLevel=impersonate}!\\" & $sComputer & "\root\CIMV2")
    If IsObj($oWMI) = 0 Then Return SetError(-1, @error, 0)
    $oList = $oWMI.ExecQuery("SELECT * FROM Win32_NetworkAdapter WHERE NetConnectionID = '" & $sAdapterName & "'", "WQL", $wbemFlagReturnImmediately + $wbemFlagForwardOnly)
    If IsObj($oList) = 0 Or Not IsAdmin() Then Return SetError(-2, @error, 0)
    For $oItem In $oList
    Local $errorlevel = 1
    If $sSetState = "Disable" Then $errorlevel = $oItem.Disable()
    If $sSetState = "Enable" Then $errorlevel = $oItem.Enable()
    If $errorlevel <> 0 Then Return SetError(-3, @error, 0)
    Next
    Return 1
    EndFunc ;==>_WinWMI_NetworkAdapter_SetState

    [/autoit]

    21 is only half the truth.