Verbindung trennen

  • Hallo,

    wie kann man mit AutoIT die Internet verbindung beenden , und wieder herstellen ?

    MFG, XGolDenX

  • Hallo,

    ich möchte das der Bot das für mich erledigt , also verbindung beenden und wiederherstellen . Denke mal das ist einfacher und schneller zu bewältigen als in "komplexeren" Sprachen wie C++ .

    Wie benutzt man also Command Sachen wie ipconfig in AutoIT ?

    MFG, XGolDenX

  • Und wie beende ich jetzt mit DOS die Verbindung ? ipconfig /release klappt nicht , da die Fehlermeldung kommt : Der Vorgang ist fehlgeschlagen , weil kein Adapter sich in einem für diesen Vorgang zulässigen Zustand befindet .

    MFG, XGolDenX

  • Es soll die Verbindung von meinem Router zum PC getrennt werden .

    Wie ist der Befehl , um mich vom Internet zu trennen und verbinden ?

  • also ich denke mal du willst die verbindung vom router ins netz trennen und nichts anderes....:rolleyes:
    normaler weise klappt des mit der command(bei mir gehts auch nicht^^) aber dann musste dich eigentlich in deinem router einloggen und die verbindung trennen und erneut aufbauen....(jedoch überhaupt kein problem ;))
    der snoozer

    • Offizieller Beitrag

    Hi,

    teste mal dies:

    [autoit]

    isOnline()
    Sleep(1000)
    ShellExecute('ipconfig', '/release')
    Sleep(1000)
    isOnline()
    ShellExecute('ipconfig', '/renew')
    Sleep(7000)
    isOnline()

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

    Func isOnline()
    If Ping("www.google.de") > 0 Then
    MsgBox(64, "Internet connection active!", "You internet connection is enabled...")
    Else
    MsgBox(16, "Internet connection failure!", "You internet connection is disabled...")
    EndIf
    EndFunc ;==>isOnline

    [/autoit]

    So long,

    Mega

    • Offizieller Beitrag

    Hallo!

    Die Befehle ipconfig /release und ipconfig /renew funktionieren aber nur wenn die Adresse von einen DHCP-Server bezogen wird, wenn die IP-Adresse fest eingestellt ist funktionieren diese Befehle nicht.

  • Zitat

    Original von bernd670
    Hallo!

    Die Befehle ipconfig /release und ipconfig /renew funktionieren aber nur wenn die Adresse von einen DHCP-Server bezogen wird, wenn die IP-Adresse fest eingestellt ist funktionieren diese Befehle nicht.

    Ich hab sie fest bezogen . Daher der Grund warum das nicht klappt ...

  • Dann gibt es nur ein.
    Im Router einwählen, trennen und neu einwählen.
    Bei miener FritzBox kann ich Telnet aktivieren.
    Dann einfach per TCPsend die Danten gesendet und fertig.

    Wegen dem Linux auf der FritzBox kein Problem, ich kommuniziere so mit einer NSLU2 und es funktioniert.

    Wie gesagt so könnte es bei einer FritzBox funzen.

    MfG
    Der_Doc

  • Also...ich hätte folgende Ideen

    Ich denke mal es dreht sich nur um die Verbindung deines PCs zum Router?!

    erstens dieser Link und vorallem denke ich das folgendes interessant ist....

    bzw.


    also wäre es z.B so möglich

    [autoit]


    #include <Process.au3>

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

    _RunDos("net session \\Client-Name /delete")

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

    ;oder

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

    _RunDos("net session /delete")

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

    ;oder ganz spezieel für Inet

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

    _RunDOS("rasidal "dfü-verbindung" /d")

    [/autoit]


    Mal sehen, was dir das bringt


    Viel spass damit ;)
    Waluev

    Flensburg ist wie Payback - wenn man 18 Punkte hat bekommt man ein Fahrrad.

    2 Mal editiert, zuletzt von Waluev (14. April 2007 um 18:41)

  • Soweit ich recht sehe , wird mit dem Code nur die Verbindung beendet , aber nicht wiederhergestellt .
    Achja , und ich will nicht meine I-Net verbindung schrotten ^^ wenn ich sachen wie /delete sehe denk ich immer dran ...

  • Hi,
    ich habe eine Lösung .... :party4: ... glaube ich :hm:

    Also es gibt das Tool "DevCon" von Microsoft damit funktioniert das. Jedenfalls bei mir.

    Also zuerst das Tool von Microsoft downloaden (siehe Link).
    Dann rausbekommen welche ID deine Lan-Karte hat.

    Code
    devcon status @PCI\*


    Bei mir ist das Ergebnis: (Ausschnitt)

    Meine Netzwerkkarte ist eine Intel Pro/1000 ..... die ID ist "PCI\VEN_8086&DEV_107C&SUBSYS_13768086&REV_05\3&61AAA01&0&68"

    und dann hat man diese Möglichkeiten:

    Code
    devcon restart "@PCI\VEN_8086&DEV_107C&SUBSYS_13768086&REV_05\3&61AAA01&0&68"
    
    devcon disable "@PCI\VEN_8086&DEV_107C&SUBSYS_13768086&REV_05\3&61AAA01&0&68"
    
    devcon enable "@PCI\VEN_8086&DEV_107C&SUBSYS_13768086&REV_05\3&61AAA01&0&68"

    Also teste mal ob das bei dir funktioniert und wenn ja dann kann man ja ein Script schreiben.

    Ich hoffe das war die Lösung

    MfG
    Der_Doc

    • Offizieller Beitrag

    Das kann man ganz elegant lösen: einfach mal kurz der Netzwerkkarte einen anderen (blinden) Gateway zuordnen. Anschließend wieder den Originalwert.
    Dazu muss die Netzwerkkarte manuell konfiguriert sein.

    [autoit]

    #include <array.au3>
    Dim $meineIP = "192.168.178.21" ; Die IP deines Adapters, muss manuell konfiguriert sein
    Dim $arGateway = _ArrayCreate("192.168.178.1", "192.168.178.1") ; IP des Routers
    Dim $arFakeGateways = _ArrayCreate("192.168.178.98", "192.168.178.99") ; blinde IP's

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

    $strComputer = "."
    $objWMIService = ObjGet("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & $strComputer & "\root\cimv2")
    $colNetCards = $objWMIService.ExecQuery _
    ("Select * From Win32_NetworkAdapterConfiguration Where IPEnabled = True")

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

    For $objNetCard in $colNetCards
    If $objNetCard.IPAddress(0) = $meineIP Then
    $objNetCard.SetGateways($arFakeGateways)
    Sleep(2000)
    $objNetCard.SetGateways($arGateway)
    ExitLoop
    EndIf
    Next

    [/autoit]
  • Ich glaub hier reden alle irgendwie an einander vorbei.
    Meine Vermutung ist das er lediglich seine IP (nicht die lokale) erneuern will, um beispielsweiße bei rapidshare.com, etc die 70min Wartezeit zu umgehen, die man aufgebrummt bekommt wenn man 100mb geladen hat.

    Das mit IpConfig /release /renew geht nur wenn sein PC direkt an das Modem angeschlossen ist und er sich mit einer DFÜ-Verbindung einwählt.

    Was ich von dir jetzt brauche ist die genaue Bezeichnung deines Routers.

    Ich habe einen T-Com Router Sinus W500 V und bei dem nutze ich dafür folgendes Batchfile:

    Code
    @echo off
    wget http://192.168.2.1/cgi-bin/disconnect.exe
    wait 3
    del hcti_status_ocontrol.htm
    wget http://192.168.2.1/cgi-bin/connect.exe
    wait 3
    del hcti_status_ocontrol.htm
    exit

    Wobei wget und wait keine Standard batch befehle sind. Kann ich aber bei bedarf zur Verfügung stellen.

    Für eine Fritzbox hätte ich auch noch was parat.
    Ansonsten kann ich das Tool RouterControl sehr empfehlen.

    gruss peggel