Button in zweiter GUI funktioniert nicht

  • Hallo Board ich habe ein kleines Prolem bei dem ich nicht so ganz weiter komme.
    Es dreht sich alles um ein kleines Tool mit dem sich unsere Aussendienstler per VPN einwählen, Laufwerke bekommen und ein paar andere Kleinigkeiten.
    Das funktioniert auch im großen und ganzen.

    Ein Kollege kam an und wollte eine zweite GUI haben mit der agezeigt ob sie verbunden sind und mit welchen Antwortzeiten.
    Nicht wundern...einige unserer Aussendienstler sind...etwas..."beratungsbedürftig":-)

    Die GUI kommt auch und zeigt was sie soll.
    Aber der Button "Trennen" macht nix.

    Ein andere Kollege hat mir schon den Tipp gegeben alles auf "GUIOnEventMode" umzustellen. hab ich gemacht...geht trotzdem nicht :whistling:

    Hier mal mein Script.
    Warum tuts der Button nicht?

    Spoiler anzeigen
    [autoit]

    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Version=beta
    #AutoIt3Wrapper_icon=icon3.ico
    #AutoIt3Wrapper_outfile=firmaConnect.exe
    #AutoIt3Wrapper_UseX64=n
    #AutoIt3Wrapper_Res_Comment=firma Connect stellt eine VPN Verbindung zu firma her.
    #AutoIt3Wrapper_Res_Description=firmaConnect
    #AutoIt3Wrapper_Res_Fileversion=3.0.0.0
    #AutoIt3Wrapper_Res_LegalCopyright=Copyright © 2010 IT der firma Pflegeberatung
    #AutoIt3Wrapper_Res_Language=1031
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #cs ----------------------------------------------------------------------------

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

    AutoIt Version: 3.0.0.0
    Author: Boris Wagener

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

    Script Function:
    Template AutoIt script.

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

    #ce ----------------------------------------------------------------------------

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

    FileInstall("firmaVPN.jpg","firmaVPN.jpg",1)
    FileInstall("icon3.ico","icon3.ico",1)
    FileInstall("Logon.wav","Logon.wav",1)

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

    ; Script Start - Add your code below here

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

    #include <Inet.au3>
    #include <GUIConstantsEx.au3>
    #include <ProgressConstants.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <StaticConstants.au3>
    #include <Process.au3>
    #include <date.au3>

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

    ;############################################################################################################################################################
    ;~ Formular

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

    Opt("GUIOnEventMode", 1) ; Wechsle in den OnEvent Modus

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

    #Region ### START Koda GUI section ### Form=C:\Users\b.wagener\Desktop\firmaConnect V3\Form1.kxf
    $Mainform = GUICreate("firma Connect V3.0", 397, 469, 150, 123, BitOR($WS_CAPTION,$WS_POPUP,$WS_BORDER,$WS_CLIPSIBLINGS))
    GUISetIcon("icon3.ico")
    GUISetBkColor(0xFFFFFF)
    $fortschritt = GUICtrlCreateProgress(32, 256, 335, 17)
    $Pic1 = GUICtrlCreatePic("firmaVPN2.jpg", 8, 8, 380, 132, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    $lbl_info = GUICtrlCreateLabel("", 32, 148, 335, 108, BitOR($SS_CENTER,$SS_SUNKEN))
    GUICtrlSetFont(-1, 10, 400, 0, "Arial")
    GUICtrlSetBkColor(-1, 0xD7E4F2)
    $Group1 = GUICtrlCreateGroup("Verbindungsart:", 40, 280, 313, 65)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $radio_dsl = GUICtrlCreateRadio("DSL/ WLAN", 80, 312, 129, 17)
    $radio_umts = GUICtrlCreateRadio("UMTS", 240, 312, 81, 17)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $lbl_passwort = GUICtrlCreateInput("", 144, 368, 161, 21, BitOR($ES_PASSWORD,$ES_AUTOHSCROLL))
    $Label1 = GUICtrlCreateLabel("Passwort:", 80, 368, 62, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $btn_verbinden = GUICtrlCreateButton("Verbinden", 120, 408, 155, 33, $WS_GROUP)
    GUICtrlSetOnEvent($btn_verbinden, "VPNConnect")
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUISetState(@SW_SHOW)

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

    ;Form2
    $Childform = GUICreate("firma Connect V3.0", 349, 159, 10, 10, BitOR($WS_CAPTION,$WS_POPUP,$WS_BORDER,$WS_CLIPSIBLINGS), BitOR($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
    GUISetIcon("I:\firmaConnect V3\icon3.ico")
    GUISetBkColor(0xFFFFFF)
    $lbl_info2 = GUICtrlCreateLabel("", 24, 12, 295, 84, BitOR($SS_CENTER,$SS_SUNKEN))
    GUICtrlSetFont(-1, 10, 400, 0, "Arial")
    GUICtrlSetBkColor(-1, 0xD7E4F2)
    $btn_trennen = GUICtrlCreateButton("Trennen", 96, 104, 155, 33, $WS_GROUP)
    GUICtrlSetOnEvent($btn_trennen, "VPNDisconnect")
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUISetState(@SW_HIDE)

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

    #EndRegion ### END Koda GUI section ###

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;Variablendeklaration
    $ProgramNameVersion = "firmaConnect -Köln- " & FileGetVersion(@AutoItExe)
    $Testdomain = "www.google.de"
    $Testserver = "dc.firma.local"
    $User = @UserName
    $LogonServer = @LogonServer

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

    Global $Mainform, $fortschritt, $Pic1, $lbl_fortschritt, $lbl_info, $User,$lbl_passwort, $btn_verbinden

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

    HotKeySet("{ESC}", "Terminate")

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;~ If FileExists(@ScriptDir & "\Download\") Then
    ;~ DirRemove(@ScriptDir & "\Download\", 1)
    ;~ EndIf

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

    ;~ If FileExists(@ScriptDir & "\firmaConnectUpdate.exe") Then
    ;~ FileDelete(@ScriptDir & "\firmaConnectUpdate.exe")
    ;~ EndIf
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;Los gehts
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    Ausblenden()
    ;VPN_Test()
    Form_Open()
    ;VPNStatus()

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

    While 1
    Sleep(500)
    WEnd

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;############################################################################################################################################################
    ; Funktionen
    ;############################################################################################################################################################
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ; Abprüfen einer VPN-Verbindung

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

    Func VPN_Test()
    $PingOnServer1 = Ping($Testserver,200)

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

    ; Wenn die VPN-Verbindung nicht besteht wird das Unterprogramm StartVPNConnect aufgerufen
    If $PingOnServer1 > 0 then
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Es besteht bereits eine VPN Verbindung.")
    Sleep(3000)
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "firma Connect wird beendet.")
    Sleep(1000)
    Terminate()
    EndIf

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

    Return
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func Form_Open()

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

    $InternetOK = TestOnInternetConnect();

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

    If $InternetOK = True Then

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

    Einblenden()

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

    GUICtrlSetState($radio_dsl, $GUI_CHECKED)

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

    ElseIf $InternetOK = False Then
    Einblenden()

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

    GUICtrlSetState($radio_umts, $GUI_CHECKED)
    GUICtrlSetData($lbl_info, @CRLF & @CRLF & "Es besteht keine DSL Verbindung."& @CRLF & @CRLF &"Verbindungsart UMTS wird gesetzt")
    Sleep(2000)

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

    EndIf

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

    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Bereit zum Verbinden."& @CRLF & @CRLF & "Bitte geben Sie ihr Passwort ein,"&@CRLF & "und klicken Sie auf Verbinden.")

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

    GUICtrlSetData($fortschritt, 10)
    EndFunc

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ; Unterfunktion : Internetverbindung testen

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

    Func TestOnInternetConnect()
    Local $PingVar,$RoundTrip ; $PingVar ist auch der Rückgabeparameter

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

    GUICtrlSetData($lbl_info, @CRLF & @CRLF &"Ein Moment bitte," & @CRLF & @CRLF& "Internetverbindung wird getestet.")
    sleep(1000)

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

    For $RoundTrip = 1 to 3
    ; !!! Hier sollte nicht nur eine! Domain abgefragt werden
    $PingVar = Ping($Testdomain,1000) ;Ping gibt die Antwortzeit in ms zurück

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

    if $PingVar <= 0 Then ; Wenn ping nicht erfolgreich war

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

    $PingVar = Ping($Testserver ,100) ; Ping gibt die Antwortzeit in ms zurück
    EndIf

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

    If $PingVar > 0 Then ; Wenn ein ping (Domäne oder Host)erfolgreich war
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Internetverbindung besteht."& @CRLF & @CRLF & "Die Antwortzeit beträgt " & $PingVar & " ms.")
    Sleep(500)
    ; Warum wird hier die For-Schleife nicht abgebrochen ?
    Else
    GUICtrlSetData($lbl_info, @CRLF & @CRLF &"Internetverbindung ist nicht erfolgt"& @CRLF & @CRLF& "Verbindung wird erneut getestet " & $RoundTrip)
    EndIf
    Next
    GUICtrlSetData($fortschritt, 10)
    Return $PingVar ; $PingVar ist der Rückgabeparameter
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func VPNConnect()

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

    If BitAND(GUICtrlRead($radio_dsl), $GUI_CHECKED) = $GUI_CHECKED Then

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

    StartVPNConnect()

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

    ;MapDrive()
    GUICtrlSetData($fortschritt, 75)
    ECM_Addins()
    GUICtrlSetData($fortschritt, 95)

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

    EndIf

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

    If BitAND(GUICtrlRead($radio_umts), $GUI_CHECKED) = $GUI_CHECKED Then
    StartUMTSInternetConnect()
    GUICtrlSetData($fortschritt, 50)
    MapDrive()
    GUICtrlSetData($fortschritt, 75)
    Sleep(500)
    ECM_Addins()
    GUICtrlSetData($fortschritt, 95)
    EndIf

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

    RunWait("gpupdate","",@SW_MINIMIZE)
    GUICtrlSetData($fortschritt, 100)
    Sleep(500)
    GUICtrlSetData($lbl_info, @CRLF & @CRLF &"Verbindungsaufbau abgeschlossen.")
    Sleep(2000)
    SoundPlay(@ScriptDir & "\logon.wav",1)
    ;Exit

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

    GUISetState(@SW_HIDE, $Mainform)

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

    VPNStatus()
    Return

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func VPNStatus()
    GUISetState(@SW_SHOW, $Childform)

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

    GUICtrlSetData($lbl_info2, @CRLF & "Verbindungsgeschwindigkeit wird ermittelt") ; Da ist glatt gelogen abder irgendwas muss ja da stehen.

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

    RunWait("C:\firma\Sysinternals\Bginfo.exe C:\firma\Sysinternals\BGInfo_PC.bgi /accepteula /timer:0")
    GUICtrlSetData($lbl_info, @CRLF & @CRLF &"BG Info wird gestartet.")

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

    ;#NoTrayIcon

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

    $Connection = Ping($Testserver,1000)

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

    ;Schleife einbauen Timerinit? http://www.autoit.de/index.php?page=Thread&threadID=8900
    ;If TimerDiff($begin) > 5000 Then

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

    GUICtrlSetData($lbl_info2, @CRLF & "VPN Verbindung zu firma aktiv." & @CRLF & "Die Antwortzeit beträgt:" & @CRLF & $Connection & " ms.")

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

    ;Hier muss ne Schleife rein
    While 1

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

    $Connection = Ping($Testserver,1000)
    Sleep (2000)
    ;Warnmeldung
    If $Connection > 350 then
    GUICtrlSetData($lbl_info2, @CRLF & "Achtung!" & @CRLF & @CRLF &"Sehr langsame Verbindung!" & @CRLF & "Arbeit nur unter Schwierigkeiten möglich!")
    ;GUICtrlSetBkColor($lbl_info2, 0xFF0000)
    Else
    GUICtrlSetData($lbl_info2, @CRLF & "VPN Verbindung zu firma aktiv." & @CRLF & "Die Antwortzeit beträgt:" & @CRLF & $Connection & " ms.")

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

    EndIf

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

    WEnd

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func VPNDisconnect()
    Run("rasdial /DISCONNECT","",@SW_HIDE)
    Sleep(1000)
    Run("net use /delete * /YES")
    Sleep (1000)
    Exit
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func StartVPNConnect()
    Local $PingVar, $RoundTrip, $InitTime, $PID
    $passwort = GUICtrlRead($lbl_passwort)
    $ConnectionName =('"firma VPN"')
    $Testserver = "dc.firma.local"
    $rasdial =("rasdial " &$ConnectionName& " " & $User & " " & $passwort & " " &" /DOMAIN:firma")

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

    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Ein Moment bitte," & @CRLF & @CRLF & "VPN Verbindung mit firma wird hergestellt.");& @CRLF & "und mit Server erbunden")

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

    ; MsgBox(0,"", $rasdial)
    $Connect= RunWait(@ComSpec & " /c " & '"' & $rasdial & '"',"",@SW_HIDE)
    ;MsgBox(0,"",$Connect)

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

    If $Connect <> 0 Then
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Bei der Verbindung trat ein Fehler auf." & @CRLF & @CRLF & "Bitte versuchen Sie es erneut.")
    Sleep(3000)
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "firma Connect wird beendet")
    Sleep(2000)
    ProcessClose ($Connect)
    Exit
    EndIf

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

    GUICtrlSetData($lbl_info, @CRLF & @CRLF &"Bitte warten," & @CRLF & @CRLF & "VPN Verbindung mit firma wird hergestellt.")
    Sleep(1000)
    $PingVar = Ping($Testserver,1000)
    While $PingVar = 0
    Sleep(100)
    $PingVar = Ping($Testserver,1000) ;sonst ändert sich $pingvar nicht:-)
    WEnd
    GUICtrlSetData($fortschritt, 20)
    Sleep(500)
    GUICtrlSetData($fortschritt, 30)
    Sleep(500)
    GUICtrlSetData($fortschritt, 40)

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

    Return $PingVar

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ; Unterfunktion : Starten der UMTS-Internet-Verbindung

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

    Func StartUMTSInternetConnect()
    Local $PingVar, $RoundTrip, $InitTime, $PID, $passwort, $ConnectionName, $Testserver, $user, $Testdomain
    $passwort = GUICtrlRead($lbl_passwort)
    $ConnectionName =('"firma VPN"')
    $Testserver = "dc.firma.local"
    $User = @UserName
    $Testdomain = "www.google.de"

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

    $rasdial =("rasdial " &$ConnectionName& " " & $User & " " & $passwort & " " &" /DOMAIN:firma")

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

    Run("C:\Program Files\Option\GlobeTrotter Connect\GlobeTrotter Connect.exe")
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Bitte stellen Sie die Verbindung" & @CRLF & @CRLF& "über GlobeTrotter Connect her.")
    Sleep(1000)
    WinWait("GlobeTrotter Connect", "Disconnect")

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

    $PingVar = Ping($Testdomain,1000); solange keine Internetverbindung besteht gehts nicht weiter

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

    While $PingVar = 0;Warten bis Verbindung steht
    ;MsgBox(0,"Ping" , $PingVar,1)
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Ein Moment bitte" & @CRLF & @CRLF& "Internetverbindung wird über UMTS hergestellt.")
    Sleep(100)
    $PingVar = Ping($Testdomain,1000)

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

    WEnd

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

    ;Dann rasdial
    RunWait(@ComSpec & " /c " & '"' & $rasdial & '"',"",@SW_HIDE)

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

    If $PingVar > 0 Then
    WinSetState("GlobeTrotter Connect","",@SW_MINIMIZE)

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

    ;ExitLoop
    EndIf

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

    ;WEnd
    ;$UMTSPing = Ping($Testdomain,1000)
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Verbindungsgeschwindigkeit" & @CRLF & @CRLF& $PingVar & " ms")
    sleep(1000)

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

    Return $PID; $PingVar
    EndFunc

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func MapDrive()

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

    GUICtrlSetData($lbl_info,@CRLF & @CRLF & "Ein Moment bitte,"& @CRLF & @CRLF & "Ihre Netzwerklaufwerke werden verbunden.")

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

    RunWait(@LogonServer & "\netlogon\logon.bat","",@SW_HIDE)
    sleep(1000)

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

    GUICtrlSetData($lbl_info,@CRLF & @CRLF &"Netzwerklaufwerke erfolgreich verbunden.")
    Sleep(500)
    Return

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ; Outlook Addins aktivieren
    Func ECM_Addins()
    IfProcessExists("outlook.exe") Then
    GUICtrlSetData($lbl_info,"Outlook ist noch geöffnet, bitte beenden.")
    MsgBox(48,"Outlook bitte beenden....","Bitte beenden Sie Outlook, bevor die Anmeldung komplett ausgeführt wird." & @CRLF & @CRLF & "Oder klicken Sie auf OK und outlook wird automatisch beendet")
    IfProcessExists("outlook.exe") Then
    SplashTextOn("Ein Moment bitte...",@CRLF & "Outlook wird gestoppt.......","-1","100","-1","-1",0,"","","")
    Sleep(500)
    ProcessClose("outlook.exe")
    Sleep(500)
    SplashOff()

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

    Else

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

    EndIf
    EndIf

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

    GUICtrlSetData($lbl_info,@CRLF &@CRLF & "Outlook AddIns werden aktiviert.")
    Sleep(500)

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

    RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Office\Outlook\AddIns\firma.ECM.OutlookAddIn","LoadBehavior","REG_DWORD","00000003")
    RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Office\InfoPath\AddIns\firma.ECM.InfoPathAddIN","LoadBehavior","REG_DWORD","00000003")

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

    GUICtrlSetData($lbl_info,@CRLF & @CRLF & "Outlook AddIns aktiv.")
    Sleep(500)
    GUICtrlSetData($fortschritt, 95)
    Return
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;~ Controls verstecken
    Func Ausblenden()

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

    GUICtrlSetState($fortschritt, $gui_hide)
    GUICtrlSetState($lbl_fortschritt, $gui_hide)
    GUICtrlSetState($btn_verbinden, $gui_hide)
    GUICtrlSetState($lbl_passwort, $gui_hide)
    GUICtrlSetState($Label1, $gui_hide)
    GUICtrlSetState($Group1, $gui_hide)
    GUICtrlSetState($radio_dsl, $gui_hide)
    GUICtrlSetState($radio_umts, $gui_hide)

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;Controls einblenden

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

    Func Einblenden()
    GUICtrlSetState($fortschritt, $gui_show)
    GUICtrlSetState($lbl_fortschritt, $gui_show)
    GUICtrlSetState($Label1, $gui_show)
    GUICtrlSetState($lbl_passwort, $gui_show)
    GUICtrlSetState($btn_verbinden, $gui_show)
    GUICtrlSetState($Group1, $gui_show)
    GUICtrlSetState($radio_dsl, $gui_show)
    GUICtrlSetState($radio_umts, $gui_show)

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ; Exitus
    Func Terminate()
    Exit 0
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    Ist alles noch etwas chaotisch... Verbesserungsvorschläge nehme ich natürlich immer gerne an.

    2 Mal editiert, zuletzt von Camulus (13. April 2011 um 15:25)

  • Hab das Skript jetzt nicht gestartet, würde wahrscheinlich eh nicht funktionieren.
    Das ganze sieht aber eigentlich ganz gut aus, bis auf das Chaos natürlich.
    Mach mal am Beginn der Funktion, die anscheinend nicht aufgerufen wird ein ConsoleWrite rein, damit du siehst, ob sich da wirklich nichts tut.

  • ich hab die 2. GUI mal von anfang an shown gesetzt.
    mit einer MsgBox siehst Du, dass zu diesem Zeitpunkt die Funktion noch angesprochen wird.
    In Ermangelung von Eingabemöglichkeiten musst Du Dich auf die Art weitertasten ...

    Spoiler anzeigen
    [autoit]

    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Version=beta
    #AutoIt3Wrapper_icon=icon3.ico
    #AutoIt3Wrapper_outfile=firmaConnect.exe
    #AutoIt3Wrapper_UseX64=n
    #AutoIt3Wrapper_Res_Comment=firma Connect stellt eine VPN Verbindung zu firma her.
    #AutoIt3Wrapper_Res_Description=firmaConnect
    #AutoIt3Wrapper_Res_Fileversion=3.0.0.0
    #AutoIt3Wrapper_Res_LegalCopyright=Copyright © 2010 IT der firma Pflegeberatung
    #AutoIt3Wrapper_Res_Language=1031
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #cs ----------------------------------------------------------------------------

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

    AutoIt Version: 3.0.0.0
    Author: Boris Wagener

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

    Script Function:
    Template AutoIt script.

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

    #ce ----------------------------------------------------------------------------

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

    FileInstall("firmaVPN.jpg","firmaVPN.jpg",1)
    FileInstall("icon3.ico","icon3.ico",1)
    FileInstall("Logon.wav","Logon.wav",1)

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

    ; Script Start - Add your code below here

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

    #include <Inet.au3>
    #include <GUIConstantsEx.au3>
    #include <ProgressConstants.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <StaticConstants.au3>
    #include <Process.au3>
    #include <date.au3>

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

    ;############################################################################################################################################################
    ;~ Formular

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

    Opt("GUIOnEventMode", 1) ; Wechsle in den OnEvent Modus

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

    #Region ### START Koda GUI section ### Form=C:\Users\b.wagener\Desktop\firmaConnect V3\Form1.kxf
    $Mainform = GUICreate("firma Connect V3.0", 397, 469, 150, 123, BitOR($WS_CAPTION,$WS_POPUP,$WS_BORDER,$WS_CLIPSIBLINGS))
    GUISetIcon("icon3.ico")
    GUISetBkColor(0xFFFFFF)
    $fortschritt = GUICtrlCreateProgress(32, 256, 335, 17)
    $Pic1 = GUICtrlCreatePic("firmaVPN2.jpg", 8, 8, 380, 132, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    $lbl_info = GUICtrlCreateLabel("", 32, 148, 335, 108, BitOR($SS_CENTER,$SS_SUNKEN))
    GUICtrlSetFont(-1, 10, 400, 0, "Arial")
    GUICtrlSetBkColor(-1, 0xD7E4F2)
    $Group1 = GUICtrlCreateGroup("Verbindungsart:", 40, 280, 313, 65)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $radio_dsl = GUICtrlCreateRadio("DSL/ WLAN", 80, 312, 129, 17)
    $radio_umts = GUICtrlCreateRadio("UMTS", 240, 312, 81, 17)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $lbl_passwort = GUICtrlCreateInput("", 144, 368, 161, 21, BitOR($ES_PASSWORD,$ES_AUTOHSCROLL))
    $Label1 = GUICtrlCreateLabel("Passwort:", 80, 368, 62, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $btn_verbinden = GUICtrlCreateButton("Verbinden", 120, 408, 155, 33, $WS_GROUP)
    GUICtrlSetOnEvent($btn_verbinden, "VPNConnect")
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUISetState(@SW_SHOW)

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

    ;Form2
    $Childform = GUICreate("firma Connect V3.0", 349, 159, 10, 10, BitOR($WS_CAPTION,$WS_POPUP,$WS_BORDER,$WS_CLIPSIBLINGS), BitOR($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
    GUISetIcon("I:\firmaConnect V3\icon3.ico")
    GUISetBkColor(0xFFFFFF)
    $lbl_info2 = GUICtrlCreateLabel("", 24, 12, 295, 84, BitOR($SS_CENTER,$SS_SUNKEN))
    GUICtrlSetFont(-1, 10, 400, 0, "Arial")
    GUICtrlSetBkColor(-1, 0xD7E4F2)
    $btn_trennen = GUICtrlCreateButton("Trennen", 96, 104, 155, 33, $WS_GROUP)
    GUICtrlSetOnEvent($btn_trennen, "VPNDisconnect")
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUISetState(@SW_HIDE)

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

    #EndRegion ### END Koda GUI section ###

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;Variablendeklaration
    $ProgramNameVersion = "firmaConnect -Köln- " & FileGetVersion(@AutoItExe)
    $Testdomain = "www.google.de"
    $Testserver = "dc.firma.local"
    $User = @UserName
    $LogonServer = @LogonServer

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

    Global $Mainform, $fortschritt, $Pic1, $lbl_fortschritt, $lbl_info, $User,$lbl_passwort, $btn_verbinden

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

    HotKeySet("{ESC}", "Terminate")

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;~ If FileExists(@ScriptDir & "\Download\") Then
    ;~ DirRemove(@ScriptDir & "\Download\", 1)
    ;~ EndIf

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

    ;~ If FileExists(@ScriptDir & "\firmaConnectUpdate.exe") Then
    ;~ FileDelete(@ScriptDir & "\firmaConnectUpdate.exe")
    ;~ EndIf
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;Los gehts
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    Ausblenden()
    ;VPN_Test()
    Form_Open()
    ;VPNStatus()

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

    GUISetState(@SW_SHOW, $Childform) ; nur zum Testen eingefügt

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

    While 1
    Sleep(500)
    WEnd

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;############################################################################################################################################################
    ; Funktionen
    ;############################################################################################################################################################
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ; Abprüfen einer VPN-Verbindung

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

    Func VPN_Test()
    $PingOnServer1 = Ping($Testserver,200)

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

    ; Wenn die VPN-Verbindung nicht besteht wird das Unterprogramm StartVPNConnect aufgerufen
    If $PingOnServer1 > 0 then
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Es besteht bereits eine VPN Verbindung.")
    Sleep(3000)
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "firma Connect wird beendet.")
    Sleep(1000)
    Terminate()
    EndIf

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

    Return
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func Form_Open()

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

    $InternetOK = TestOnInternetConnect();

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

    If $InternetOK = True Then

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

    Einblenden()

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

    GUICtrlSetState($radio_dsl, $GUI_CHECKED)

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

    ElseIf $InternetOK = False Then
    Einblenden()

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

    GUICtrlSetState($radio_umts, $GUI_CHECKED)
    GUICtrlSetData($lbl_info, @CRLF & @CRLF & "Es besteht keine DSL Verbindung."& @CRLF & @CRLF &"Verbindungsart UMTS wird gesetzt")
    Sleep(2000)

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

    EndIf

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

    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Bereit zum Verbinden."& @CRLF & @CRLF & "Bitte geben Sie ihr Passwort ein,"&@CRLF & "und klicken Sie auf Verbinden.")

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

    GUICtrlSetData($fortschritt, 10)
    EndFunc

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ; Unterfunktion : Internetverbindung testen

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

    Func TestOnInternetConnect()
    Local $PingVar,$RoundTrip ; $PingVar ist auch der Rückgabeparameter

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

    GUICtrlSetData($lbl_info, @CRLF & @CRLF &"Ein Moment bitte," & @CRLF & @CRLF& "Internetverbindung wird getestet.")
    sleep(1000)

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

    For $RoundTrip = 1 to 3
    ; !!! Hier sollte nicht nur eine! Domain abgefragt werden
    $PingVar = Ping($Testdomain,1000) ;Ping gibt die Antwortzeit in ms zurück

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

    if $PingVar <= 0 Then ; Wenn ping nicht erfolgreich war

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

    $PingVar = Ping($Testserver ,100) ; Ping gibt die Antwortzeit in ms zurück
    EndIf

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

    If $PingVar > 0 Then ; Wenn ein ping (Domäne oder Host)erfolgreich war
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Internetverbindung besteht."& @CRLF & @CRLF & "Die Antwortzeit beträgt " & $PingVar & " ms.")
    Sleep(500)
    ; Warum wird hier die For-Schleife nicht abgebrochen ?
    Else
    GUICtrlSetData($lbl_info, @CRLF & @CRLF &"Internetverbindung ist nicht erfolgt"& @CRLF & @CRLF& "Verbindung wird erneut getestet " & $RoundTrip)
    EndIf
    Next
    GUICtrlSetData($fortschritt, 10)
    Return $PingVar ; $PingVar ist der Rückgabeparameter
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func VPNConnect()

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

    If BitAND(GUICtrlRead($radio_dsl), $GUI_CHECKED) = $GUI_CHECKED Then

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

    StartVPNConnect()

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

    ;MapDrive()
    GUICtrlSetData($fortschritt, 75)
    ECM_Addins()
    GUICtrlSetData($fortschritt, 95)

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

    EndIf

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

    If BitAND(GUICtrlRead($radio_umts), $GUI_CHECKED) = $GUI_CHECKED Then
    StartUMTSInternetConnect()
    GUICtrlSetData($fortschritt, 50)
    MapDrive()
    GUICtrlSetData($fortschritt, 75)
    Sleep(500)
    ECM_Addins()
    GUICtrlSetData($fortschritt, 95)
    EndIf

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

    RunWait("gpupdate","",@SW_MINIMIZE)
    GUICtrlSetData($fortschritt, 100)
    Sleep(500)
    GUICtrlSetData($lbl_info, @CRLF & @CRLF &"Verbindungsaufbau abgeschlossen.")
    Sleep(2000)
    SoundPlay(@ScriptDir & "\logon.wav",1)
    ;Exit

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

    GUISetState(@SW_HIDE, $Mainform)

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

    VPNStatus()
    Return

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func VPNStatus()
    GUISetState(@SW_SHOW, $Childform)

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

    GUICtrlSetData($lbl_info2, @CRLF & "Verbindungsgeschwindigkeit wird ermittelt") ; Da ist glatt gelogen abder irgendwas muss ja da stehen.

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

    RunWait("C:\firma\Sysinternals\Bginfo.exe C:\firma\Sysinternals\BGInfo_PC.bgi /accepteula /timer:0")
    GUICtrlSetData($lbl_info, @CRLF & @CRLF &"BG Info wird gestartet.")

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

    ;#NoTrayIcon

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

    $Connection = Ping($Testserver,1000)

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

    ;Schleife einbauen Timerinit? http://www.autoit.de/index.php?page=Thread&threadID=8900
    ;If TimerDiff($begin) > 5000 Then

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

    GUICtrlSetData($lbl_info2, @CRLF & "VPN Verbindung zu firma aktiv." & @CRLF & "Die Antwortzeit beträgt:" & @CRLF & $Connection & " ms.")

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

    ;Hier muss ne Schleife rein
    While 1

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

    $Connection = Ping($Testserver,1000)
    Sleep (2000)
    ;Warnmeldung
    If $Connection > 350 then
    GUICtrlSetData($lbl_info2, @CRLF & "Achtung!" & @CRLF & @CRLF &"Sehr langsame Verbindung!" & @CRLF & "Arbeit nur unter Schwierigkeiten möglich!")
    ;GUICtrlSetBkColor($lbl_info2, 0xFF0000)
    Else
    GUICtrlSetData($lbl_info2, @CRLF & "VPN Verbindung zu firma aktiv." & @CRLF & "Die Antwortzeit beträgt:" & @CRLF & $Connection & " ms.")

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

    EndIf

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

    WEnd

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func VPNDisconnect()

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

    MsgBox(0, '', 'Test') ; nur zum Testen eingefügt

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

    Run("rasdial /DISCONNECT","",@SW_HIDE)
    Sleep(1000)
    Run("net use /delete * /YES")
    Sleep (1000)
    Exit
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func StartVPNConnect()
    Local $PingVar, $RoundTrip, $InitTime, $PID
    $passwort = GUICtrlRead($lbl_passwort)
    $ConnectionName =('"firma VPN"')
    $Testserver = "dc.firma.local"
    $rasdial =("rasdial " &$ConnectionName& " " & $User & " " & $passwort & " " &" /DOMAIN:firma")

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

    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Ein Moment bitte," & @CRLF & @CRLF & "VPN Verbindung mit firma wird hergestellt.");& @CRLF & "und mit Server erbunden")

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

    ; MsgBox(0,"", $rasdial)
    $Connect= RunWait(@ComSpec & " /c " & '"' & $rasdial & '"',"",@SW_HIDE)
    ;MsgBox(0,"",$Connect)

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

    If $Connect <> 0 Then
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Bei der Verbindung trat ein Fehler auf." & @CRLF & @CRLF & "Bitte versuchen Sie es erneut.")
    Sleep(3000)
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "firma Connect wird beendet")
    Sleep(2000)
    ProcessClose ($Connect)
    Exit
    EndIf

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

    GUICtrlSetData($lbl_info, @CRLF & @CRLF &"Bitte warten," & @CRLF & @CRLF & "VPN Verbindung mit firma wird hergestellt.")
    Sleep(1000)
    $PingVar = Ping($Testserver,1000)
    While $PingVar = 0
    Sleep(100)
    $PingVar = Ping($Testserver,1000) ;sonst ändert sich $pingvar nicht:-)
    WEnd
    GUICtrlSetData($fortschritt, 20)
    Sleep(500)
    GUICtrlSetData($fortschritt, 30)
    Sleep(500)
    GUICtrlSetData($fortschritt, 40)

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

    Return $PingVar

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ; Unterfunktion : Starten der UMTS-Internet-Verbindung

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

    Func StartUMTSInternetConnect()
    Local $PingVar, $RoundTrip, $InitTime, $PID, $passwort, $ConnectionName, $Testserver, $user, $Testdomain
    $passwort = GUICtrlRead($lbl_passwort)
    $ConnectionName =('"firma VPN"')
    $Testserver = "dc.firma.local"
    $User = @UserName
    $Testdomain = "www.google.de"

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

    $rasdial =("rasdial " &$ConnectionName& " " & $User & " " & $passwort & " " &" /DOMAIN:firma")

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

    Run("C:\Program Files\Option\GlobeTrotter Connect\GlobeTrotter Connect.exe")
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Bitte stellen Sie die Verbindung" & @CRLF & @CRLF& "über GlobeTrotter Connect her.")
    Sleep(1000)
    WinWait("GlobeTrotter Connect", "Disconnect")

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

    $PingVar = Ping($Testdomain,1000); solange keine Internetverbindung besteht gehts nicht weiter

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

    While $PingVar = 0;Warten bis Verbindung steht
    ;MsgBox(0,"Ping" , $PingVar,1)
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Ein Moment bitte" & @CRLF & @CRLF& "Internetverbindung wird über UMTS hergestellt.")
    Sleep(100)
    $PingVar = Ping($Testdomain,1000)

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

    WEnd

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

    ;Dann rasdial
    RunWait(@ComSpec & " /c " & '"' & $rasdial & '"',"",@SW_HIDE)

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

    If $PingVar > 0 Then
    WinSetState("GlobeTrotter Connect","",@SW_MINIMIZE)

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

    ;ExitLoop
    EndIf

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

    ;WEnd
    ;$UMTSPing = Ping($Testdomain,1000)
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Verbindungsgeschwindigkeit" & @CRLF & @CRLF& $PingVar & " ms")
    sleep(1000)

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

    Return $PID; $PingVar
    EndFunc

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func MapDrive()

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

    GUICtrlSetData($lbl_info,@CRLF & @CRLF & "Ein Moment bitte,"& @CRLF & @CRLF & "Ihre Netzwerklaufwerke werden verbunden.")

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

    RunWait(@LogonServer & "\netlogon\logon.bat","",@SW_HIDE)
    sleep(1000)

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

    GUICtrlSetData($lbl_info,@CRLF & @CRLF &"Netzwerklaufwerke erfolgreich verbunden.")
    Sleep(500)
    Return

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ; Outlook Addins aktivieren
    Func ECM_Addins()
    If ProcessExists("outlook.exe") Then
    GUICtrlSetData($lbl_info,"Outlook ist noch geöffnet, bitte beenden.")
    MsgBox(48,"Outlook bitte beenden....","Bitte beenden Sie Outlook, bevor die Anmeldung komplett ausgeführt wird." & @CRLF & @CRLF & "Oder klicken Sie auf OK und outlook wird automatisch beendet")
    If ProcessExists("outlook.exe") Then
    SplashTextOn("Ein Moment bitte...",@CRLF & "Outlook wird gestoppt.......","-1","100","-1","-1",0,"","","")
    Sleep(500)
    ProcessClose("outlook.exe")
    Sleep(500)
    SplashOff()

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

    Else

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

    EndIf
    EndIf

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

    GUICtrlSetData($lbl_info,@CRLF &@CRLF & "Outlook AddIns werden aktiviert.")
    Sleep(500)

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

    RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Office\Outlook\AddIns\firma.ECM.OutlookAddIn","LoadBehavior","REG_DWORD","00000003")
    RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Office\InfoPath\AddIns\firma.ECM.InfoPathAddIN","LoadBehavior","REG_DWORD","00000003")

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

    GUICtrlSetData($lbl_info,@CRLF & @CRLF & "Outlook AddIns aktiv.")
    Sleep(500)
    GUICtrlSetData($fortschritt, 95)
    Return
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;~ Controls verstecken
    Func Ausblenden()

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

    GUICtrlSetState($fortschritt, $gui_hide)
    GUICtrlSetState($lbl_fortschritt, $gui_hide)
    GUICtrlSetState($btn_verbinden, $gui_hide)
    GUICtrlSetState($lbl_passwort, $gui_hide)
    GUICtrlSetState($Label1, $gui_hide)
    GUICtrlSetState($Group1, $gui_hide)
    GUICtrlSetState($radio_dsl, $gui_hide)
    GUICtrlSetState($radio_umts, $gui_hide)

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;Controls einblenden

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

    Func Einblenden()
    GUICtrlSetState($fortschritt, $gui_show)
    GUICtrlSetState($lbl_fortschritt, $gui_show)
    GUICtrlSetState($Label1, $gui_show)
    GUICtrlSetState($lbl_passwort, $gui_show)
    GUICtrlSetState($btn_verbinden, $gui_show)
    GUICtrlSetState($Group1, $gui_show)
    GUICtrlSetState($radio_dsl, $gui_show)
    GUICtrlSetState($radio_umts, $gui_show)

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ; Exitus
    Func Terminate()
    Exit 0
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

    [/autoit]

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ! lauffähiges ! Script, dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)

  • Hallo camulus,

    ich denke wir reden aneinander vorbei.
    Ich habe in deinen Code 2 Zeilen eingefügt.
    Die eine bewirkt, dass dein Child-Gui bereits beim Start mit angezeigt wird.
    Die 2. Zeile habe ich in die Funktion gesteckt, die aufgerufen werden soll, wenn trennen angeklickt wird.
    Wenn Du auf trennen klickst wird die MsgBox angezeigt.
    D.h. dass die Funktion auch aufgerufen wird.

    Nachdem ich weder einPasswort habe noch die Lust alle Scriptschritte zu prüfen möchte ich dass Dir überlassen.
    Als Handwerkzeug habe ich Dir exemplarisch die Möglichkeit gezeigt mit einer MsgBox zu prüfen, ob Dein Code ausgeführt wird.
    Wenn Du das nicht machen willst/kannst, dann können wir dir auch nicht helfen.

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ! lauffähiges ! Script, dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)

  • So ist zwar immer noch ein bißchen unordentlich aber funtioniert.
    Wenn es noch jemanden interesiert:

    Spoiler anzeigen
    [autoit]

    #NoTrayIcon
    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Version=beta
    #AutoIt3Wrapper_icon=world.ico
    #AutoIt3Wrapper_outfile=exe\XConnect.exe
    #AutoIt3Wrapper_Res_Comment=X Connect stellt eine VPN Verbindung zu X her.
    #AutoIt3Wrapper_Res_Description=XConnect
    #AutoIt3Wrapper_Res_Fileversion=3.0.0.0
    #AutoIt3Wrapper_Res_LegalCopyright=Copyright © 2010 IT der X Pflegeberatung
    #AutoIt3Wrapper_Res_Language=1031
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #cs ----------------------------------------------------------------------------

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

    AutoIt Version: 3.0.0.0
    Author: Boris Wagener

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

    Script Function:
    Template AutoIt script.

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

    #ce ----------------------------------------------------------------------------

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

    FileInstall("XVPN2.jpg","XVPN2.jpg",1)
    FileInstall("world.ico","world.ico",1)
    FileInstall("Logon.wav","Logon.wav",1)

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

    ; Script Start - Add your code below here

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

    #include <Inet.au3>
    #include <GUIConstantsEx.au3>
    #include <ProgressConstants.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <StaticConstants.au3>
    #include <Process.au3>
    #include <date.au3>
    #include <GuiEdit.au3>

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

    ;############################################################################################################################################################

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

    ; Wechsle in den OnEvent Modus
    Opt("GUIOnEventMode", 1)

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;Variablendeklaration
    $ProgramNameVersion = "XConnect -Köln- " & FileGetVersion(@AutoItExe)
    $Testdomain = "www.google.de"
    $Testserver = "dc.X.local"
    $User = @UserName
    $LogonServer = @LogonServer

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

    ; Die werden alle gebraucht und müssen vorher deklariert werden weil die GUIs in Functions ereugt werden
    Global $Mainform, $Childform, $fortschritt, $Pic1, $lbl_fortschritt, $lbl_info, $lbl_info2, $User,$lbl_passwort, $btn_verbinden, $btn_trennen, $radio_dsl, $radio_umts, $Label1, $Group1, $chk_showpw, $lbl_ip
    ;Variablen in CheckOnProgUpdate
    Global $ProgramNameVersion, $FileName
    Global $DownloadDir = @ScriptDir & "\Download\XConnect.exe"

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

    #include "CheckOnProgUpdate.au3"
    #include "WriteLogData.au3"

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

    ;ESC bricht alles ab
    HotKeySet("{ESC}", "_Terminate")

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

    $ProgramNameVersion = "XConnect -Köln- " & FileGetVersion(@AutoItExe)
    $FileName = "Logon_" & @YEAR & @MON & @MDAY & "_" & @HOUR & @MIN & @SEC & ".log"

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    If FileExists(@ScriptDir & "\Download\") Then
    DirRemove(@ScriptDir & "\Download\", 1)
    EndIf

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

    If FileExists(@ScriptDir & "\XConnectUpdate.exe") Then
    FileDelete(@ScriptDir & "\XConnectUpdate.exe")
    EndIf

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

    If FileDelete(@ScriptDir & "\*.log") = 1 Then
    _WriteLogData("Alte LOG Datei wurde erfolgreich gelöscht.")
    EndIf
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    _WriteLogData("Programm : " & @ScriptName & ". Version=" & FileGetVersion(@ScriptName) & " mit Datum=" & FileGetTime(@ScriptName, 1,1))
    _WriteLogData("Benutzer : " & @UserName)
    _WriteLogData("LogonServer : " & @LogonServer)
    _WriteLogData("LogonDomain : " & @LogonDomain)
    _WriteLogData("LogonDNSDomain : " & @LogonDNSDomain)
    _WriteLogData("Desktopverzeichnis: " & @DesktopCommonDir)
    _WriteLogData("---------------------------------------------------------------------")

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;Los gehts
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;Main GUI aufrufen
    _Mainform()

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

    ;ChildGui aufrufen, GuiSetState (@SW_HIDE), also versteckt. Diese GUI muss von Anfang an mitlaufen.
    _Childform()

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

    ;Controls ausblenden bis Internetverbindung überbrüft ist
    _Ausblenden()

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

    ; Prüfen ob schon eine PN Verindung besteht
    _VPNTest()

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

    ; Internet Verbindung testen, Controls einblenden, RadioButtos setzen, auf Passwort warten.
    ;Hier geht es erst weiter wenn der Verinden Button gedruckt wird.
    ; ab dann _VPNConnect()
    _Startup()

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

    ;Antwortzeit der Verbindung ermitteln und in $Childgui anzeigen.

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

    _VPNStatus()

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

    ;Nicht die Reihenfolge er Function Aufrufe ändern!!!

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

    ;Hauptprogramm:-)
    While 1
    Sleep(500)
    WEnd

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;############################################################################################################################################################
    ; Funktionen
    ;############################################################################################################################################################
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;Mainform erstellen und anzeigen
    Func _Mainform()
    #Region ### START Koda GUI section ### Form=C:\Users\b.wagener\Desktop\XConnect V3\Form1.kxf
    $Mainform = GUICreate($ProgramNameVersion, 397, 500, 50, 50, BitOR($WS_CAPTION,$WS_POPUP,$WS_BORDER,$WS_CLIPSIBLINGS))
    GUISetIcon("C:\X\world.ico")
    GUISetBkColor(0xFFFFFF)
    $fortschritt = GUICtrlCreateProgress(32, 256, 335, 17)
    $Pic1 = GUICtrlCreatePic("XVPN2.jpg", 8, 8, 380, 125, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    $lbl_info = GUICtrlCreateLabel("", 32, 148, 335, 108, BitOR($SS_CENTER,$SS_SUNKEN))
    GUICtrlSetFont(-1, 10, 400, 0, "Arial")
    GUICtrlSetBkColor(-1, 0xD7E4F2)
    $Group1 = GUICtrlCreateGroup("Verbindungsart:", 40, 280, 313, 65)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $radio_dsl = GUICtrlCreateRadio("DSL/ WLAN", 80, 312, 129, 17)
    $radio_umts = GUICtrlCreateRadio("UMTS", 240, 312, 81, 17)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $lbl_passwort = GUICtrlCreateInput("", 144, 368, 161, 21, BitOR($ES_CENTER,$ES_PASSWORD,$ES_AUTOHSCROLL))
    GUICtrlSetFont(-1, 11, 400, "MS Sans Serif")
    _GUICtrlEdit_SetPasswordChar($lbl_passwort, "*")
    $Label1 = GUICtrlCreateLabel("Passwort:", 80, 368, 62, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    ;~ $btn_verbinden = GUICtrlCreateButton("Verbinden", 120, 450, 155, 33,$BS_PUSHLIKE,$WS_GROUP)
    $btn_verbinden = GUICtrlCreateButton("Verbinden", 120, 450, 155, 33, BitOR($BS_DEFPUSHBUTTON,$BS_PUSHLIKE,$WS_GROUP)) ;Button mit Enter drücken
    GUICtrlSetOnEvent($btn_verbinden, "_VPNConnect")
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $chk_showpw = GUICtrlCreateCheckbox("Passwort anzeigen", 155, 395, 161, 17)
    GUICtrlSetOnEvent($chk_showpw, "_showpw")
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    #EndRegion ### END Koda GUI section ###
    GUISetState(@SW_SHOW)
    _WriteLogData("Mainform erstellt")
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;Childform erstellen und anzeigen
    Func _Childform()

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

    $Childform = GUICreate("X Connect V 3.0.0.0" , 264, 116, 10, 10, BitOR($WS_CAPTION,$WS_POPUP,$WS_BORDER,$WS_CLIPSIBLINGS), BitOR($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
    GUISetIcon("C:\X\world.ico")
    GUISetBkColor(0xFFFFFF)
    $lbl_info2 = GUICtrlCreateLabel("", 8, 4, 247, 52, BitOR($SS_CENTER,$SS_SUNKEN))
    GUICtrlSetFont(-1, 9, 400, 0, "Arial")
    GUICtrlSetBkColor(-1, 0xD7E4F2)
    $btn_trennen = GUICtrlCreateButton("Trennen", 72, 80, 123, 25, $WS_GROUP)
    GUICtrlSetOnEvent($btn_trennen, "_VPNDisconnect")
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $lbl_ip = GUICtrlCreateLabel("", 8, 56, 245, 20, $SS_CENTER)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    GUISetState(@SW_HIDE)
    _WriteLogData("Childform erstellt")
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func _Update()

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

    If _CheckOnProgUpdate() = 1 Then ; Unterprogrammaufruf, Sourcecode in externer Datei

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

    FileInstall("XConnectUpdate.exe","XConnectUpdate.exe",1)
    sleep(500)
    run("XConnectUpdate.exe") ; Aufruf des eigenständigen Scriptes zum update der XConnect-Datei
    GUIDelete($Mainform)
    FileDelete(@ScriptDir & "\*.jpg")

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

    FileDelete(@ScriptDir & "\*.wav")

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

    exit ; Programmabbruch, Beenden dieses Programmes
    Else

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

    EndIf
    _WriteLogData("Updateüberprüfung abgeschlossen")
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ; Abprüfen einer VPN-Verbindung

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

    Func _VPNTest()
    $PingOnServer1 = Ping($Testserver,1000)

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

    ; Wenn die VPN-Verbindung nicht besteht wird das Unterprogramm StartVPNConnect aufgerufen
    If $PingOnServer1 > 0 then
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Es besteht bereits eine VPN Verbindung.")
    _WriteLogData("VPN verbiondung besteht bereits. Antwortzeit: " & $PingOnServer1)
    Sleep(3000)
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "X Connect wird beendet.")
    Sleep(1000)
    _Terminate()
    EndIf

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func _Startup()

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

    ;Test ob eine Internetverbindung besteht
    $InternetOK = _TestOnInternetConnect();

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

    ;Wenn ja Controls einblenden und Eingabe abwarten
    If $InternetOK = True Then
    _Einblenden()
    GUICtrlSetState($radio_dsl, $GUI_CHECKED)

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

    ;Wenn nicht auch einblenden und Verbindungsart auf UMTS setzen.
    ElseIf $InternetOK = False Then
    _Einblenden()
    GUICtrlSetState($radio_umts, $GUI_CHECKED)
    GUICtrlSetData($lbl_info, @CRLF & @CRLF & "Es besteht keine DSL Verbindung."& @CRLF & @CRLF &"Verbindungsart UMTS wird gesetzt")
    _WriteLogData("Keine Internetverbindung, Verbindungsart wird auf UMTS gesetzt")
    Sleep(1500)

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

    EndIf

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

    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Bereit zum Verbinden."& @CRLF & @CRLF & "Bitte geben Sie ihr Passwort ein,"&@CRLF & "und klicken Sie auf Verbinden.")
    GUICtrlSetState($lbl_passwort,$GUI_FOCUS)

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

    EndFunc

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func _VPNConnect()

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

    ;Fortschritt anziegen:-)
    GUICtrlSetData($fortschritt, 10)

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

    ;Wenn DSL RadioButton aktiv ist
    If BitAND(GUICtrlRead($radio_dsl), $GUI_CHECKED) = $GUI_CHECKED Then
    _StartVPNConnect()
    _Update()
    GUICtrlSetData($fortschritt, 50)
    _MapDrive()
    GUICtrlSetData($fortschritt, 75)
    _ECMAddins()
    GUICtrlSetData($fortschritt, 95)
    GUICtrlSetData($lbl_info, @CRLF & @CRLF &"Abschliessende Einstellungen.")

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

    EndIf

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

    ;Wenn UMTS RadioButton aktiv ist
    If BitAND(GUICtrlRead($radio_umts), $GUI_CHECKED) = $GUI_CHECKED Then
    _StartUMTSInternetConnect()
    _Update()
    GUICtrlSetData($fortschritt, 50)
    _MapDrive()
    GUICtrlSetData($fortschritt, 75)
    Sleep(500)
    _ECMAddins()
    GUICtrlSetData($fortschritt, 95)
    GUICtrlSetData($lbl_info, @CRLF & @CRLF &"Abschliessende Einstellungen.")
    EndIf

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

    ;gpupdate und BG info
    Run("gpupdate","",@SW_HIDE)
    GUICtrlSetData($fortschritt, 100)
    Sleep(500)
    _WriteLogData("gpudate gestartet")
    Run("C:\X\Sysinternals\Bginfo.exe C:\X\Sysinternals\BGInfo_PC.bgi /accepteula /timer:0")
    GUICtrlSetData($lbl_info, @CRLF & @CRLF &"BG Info wird gestartet.")
    GUICtrlSetData($lbl_info, @CRLF & @CRLF &"Verbindungsaufbau abgeschlossen.")
    _WriteLogData("BG Info Update")
    Sleep(1000)
    ;tadaaaaaa
    SoundPlay(@ScriptDir & "\logon.wav",1)
    ;Exit

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

    GUISetState(@SW_HIDE, $Mainform)
    _WriteLogData("verbinidungsaufbau abgeschlossen.")
    ;$childform zur aktiven GUI machen
    GUISwitch($Childform)
    GUISetState(@SW_SHOW, $Childform)
    GUICtrlSetData($lbl_ip, "IP Adresse: " & @IPAddress1)

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

    HotKeySet("{ESC}", "_nichts")

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func _VPNStatus()

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

    GUICtrlSetData($lbl_info2, @CRLF & "Verbindungsgeschwindigkeit wird ermittelt") ; Da ist glatt gelogen abder irgendwas muss ja da stehen.

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

    $Connection = Ping($Testserver,1000)

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

    GUICtrlSetData($lbl_info2, "VPN Verbindung zu X hergestellt." & @CRLF & "Die Antwortzeit beträgt:" & @CRLF & $Connection & " ms.")

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

    While 1

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

    $Connection = Ping($Testserver,1000)
    Sleep (5000)
    ;Warnmeldung wenn Verbindungsgeschwindigkeit zu langsam
    If $Connection > 350 then
    GUICtrlSetData($lbl_info2, "Achtung!" & @CRLF & "Sehr langsame Verbindung!" & @CRLF & "Arbeit nur unter Schwierigkeiten möglich!")
    ;GUICtrlSetBkColor($lbl_info2, 0xFF0000)
    _WriteLogData("UMTS Geschwindingkeitswarnung. ANtwortzeit: " & $Connection)
    Else
    GUICtrlSetData($lbl_info2, "VPN Verbindung zu X hergestellt." & @CRLF & "Die Antwortzeit beträgt:" & @CRLF & $Connection & " ms.")

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

    EndIf

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

    WEnd

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;VPN Verbindung trennen und Netzlaufwerke trennen
    Func _VPNDisconnect()

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

    GUICtrlSetData($lbl_info2, "VPN Verbindung zu X wird getrennt." & @CRLF & @CRLF &"Netzlaufwerke werden getrennt.")

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

    Run("rasdial /DISCONNECT","",@SW_HIDE)
    _WriteLogData("Verbindung getrennt.")
    Sleep(1000)
    Run("net use /delete * /YES","",@SW_HIDE)
    _WriteLogData("Netzlaufwerke getrennt")
    Sleep (1000)
    GUICtrlSetData($lbl_info2, "Trennung erfolgt." & @CRLF & @CRLF &"Programm wird beendet.")
    Sleep(1500)
    ;Files wieder löschen.
    _DeleteFiles()
    Exit
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ; Unterfunktion : Internetverbindung testen

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

    Func _TestOnInternetConnect()
    Local $PingVar,$RoundTrip ; $PingVar ist auch der Rückgabeparameter

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

    GUICtrlSetData($lbl_info, @CRLF & @CRLF &"Ein Moment bitte," & @CRLF & @CRLF& "Internetverbindung wird getestet.")
    sleep(1000)

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

    For $RoundTrip = 1 to 3
    ; !!! Hier sollte nicht nur eine! Domain abgefragt werden
    $PingVar = Ping($Testdomain,1000) ;Ping gibt die Antwortzeit in ms zurück

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

    if $PingVar <= 0 Then ; Wenn ping nicht erfolgreich war
    $PingVar = Ping($Testserver ,100) ; Ping gibt die Antwortzeit in ms zurück
    EndIf

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

    If $PingVar > 0 Then ; Wenn ein ping (Domäne oder Host)erfolgreich war
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Internetverbindung besteht."& @CRLF & @CRLF & "Die Antwortzeit beträgt " & $PingVar & " ms.")
    Sleep(500)
    _WriteLogData("Intenetverbindung besteht. Antwortzeit: " & $PingVar)
    Else
    GUICtrlSetData($lbl_info, @CRLF & @CRLF &"Internetverbindung ist nicht erfolgt"& @CRLF & @CRLF& "Verbindung wird erneut getestet " & $RoundTrip)
    EndIf

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

    Next

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

    Return $PingVar ; $PingVar ist der Rückgabeparameter
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func _StartVPNConnect()

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

    ;Variablendeklaration
    Local $PingVar, $RoundTrip, $InitTime, $PID
    $passwort = GUICtrlRead($lbl_passwort)
    $ConnectionName =('"X VPN"')
    $Testserver = "dc.X.local"
    $rasdial = ("rasdial " &$ConnectionName& " " & $User & " " & $passwort & " " &" /DOMAIN:X")

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

    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Ein Moment bitte," & @CRLF & @CRLF & "VPN Verbindung mit X wird hergestellt.");& @CRLF & "und mit Server erbunden")

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

    ;rasdial ausführen
    $Connect= RunWait(@ComSpec & " /c " & '"' & $rasdial & '"',"",@SW_HIDE)
    _WriteLogData("Rasdial ausgeführt.")

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

    ;Runwait liefert im Fehlerfall 0 zurück.Der exitcode für cmd ist aber 0 also <>0:-)

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

    If $Connect <> 0 Then
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Bei der Verbindung trat ein Fehler auf." & @CRLF & @CRLF & "Bitte versuchen Sie es erneut.")
    Sleep(3000)
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "X Connect wird beendet")
    Sleep(2000)
    _WriteLogData("verbindung fehlgeschlagen. XConnect wir beendet")
    ProcessClose ($Connect)
    Exit
    EndIf

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

    GUICtrlSetData($lbl_info, @CRLF & @CRLF &"Bitte warten," & @CRLF & @CRLF & "VPN Verbindung mit X wird hergestellt.")
    Sleep(1000)

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

    $PingVar = Ping($Testserver,1000)
    $InitTime = TimerInit()
    While $PingVar = 0
    Sleep(100)
    ;Abbruch wenn nach 15 sekunden keine Antwort vom DC
    If TimerDiff($InitTime) > 15000 Then

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

    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Verbindungsfehler" & @CRLF & @CRLF & "Bitte versuchen Sie es erneut.")
    Sleep(1000)
    ProcessClose($Connect)
    Exit
    EndIf

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

    $PingVar = Ping($Testserver,1000) ;sonst ändert sich $pingvar nicht:-)
    WEnd

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

    ;Was fürs Auge
    GUICtrlSetData($fortschritt, 20)
    Sleep(250)
    GUICtrlSetData($fortschritt, 30)

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

    Return $PingVar

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ; Unterfunktion : Starten der UMTS-Internet-Verbindung

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

    Func _StartUMTSInternetConnect()

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

    Local $PingVar, $RoundTrip, $InitTime, $PID, $passwort, $ConnectionName, $Testserver, $user, $Testdomain
    $passwort = GUICtrlRead($lbl_passwort)
    $ConnectionName =('"X VPN"')
    $Testserver = "dc.X.local"
    $User = @UserName
    $Testdomain = "www.google.de"

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

    $rasdial = ("rasdial " &$ConnectionName& " " & $User & " " & $passwort & " " &" /DOMAIN:X")

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

    Run("C:\Program Files\Option\GlobeTrotter Connect\GlobeTrotter Connect.exe")
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Bitte stellen Sie die Verbindung" & @CRLF & @CRLF& "über GlobeTrotter Connect her.")
    Sleep(1000)
    ; Disconnect ist der einzige Text den man hier verwenden kann.
    ;Alternative UMTS als Wählverbindung einrichten und GlobeTrotter einstampfen
    WinWait("GlobeTrotter Connect", "Disconnect")

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

    $PingVar = Ping($Testdomain,1000); solange keine Internetverbindung besteht gehts nicht weiter

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

    While $PingVar = 0;Warten bis Verbindung steht
    ;MsgBox(0,"Ping" , $PingVar,1)
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Ein Moment bitte" & @CRLF & @CRLF& "Internetverbindung wird über UMTS hergestellt.")
    Sleep(100)
    $PingVar = Ping($Testdomain,1000)

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

    WEnd
    _WriteLogData("UMTS Verbindung hergestellt. Antwortzeit: " & $PingVar)

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

    ;Rasdial ausführen... nicht vergessen der Rest der Fuktion stellt nur eine Internetverbindung her.
    RunWait(@ComSpec & " /c " & '"' & $rasdial & '"',"",@SW_HIDE)
    _WriteLogData("Rasdial UMTS Verbindung ausgeführt.")

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

    If $PingVar > 0 Then
    WinSetState("GlobeTrotter Connect","",@SW_MINIMIZE)

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

    ;ExitLoop
    EndIf

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

    ;WEnd
    ;$UMTSPing = Ping($Testdomain,1000)
    GUICtrlSetData($lbl_info, @CRLF &@CRLF & "Verbindungsgeschwindigkeit" & @CRLF & @CRLF& $PingVar & " ms")
    sleep(1000)

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

    Return $PID; $PingVar
    EndFunc

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;Netzlaufwerke verbinden
    Func _MapDrive()

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

    GUICtrlSetData($lbl_info,@CRLF & @CRLF & "Ein Moment bitte,"& @CRLF & @CRLF & "Ihre Netzwerklaufwerke werden verbunden.")

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

    RunWait(@LogonServer & "\netlogon\logon.bat","",@SW_HIDE)
    _WriteLogData("Netzlaufwerke verbunden.")
    GUICtrlSetData($lbl_info,@CRLF & @CRLF &"Netzwerklaufwerke erfolgreich verbunden.")
    Sleep(500)
    Return

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ; Outlook Addins aktivieren
    Func _ECMAddins()
    If ProcessExists("outlook.exe") Then
    GUICtrlSetData($lbl_info,"Outlook ist noch geöffnet, bitte beenden.")
    MsgBox(48,"Outlook bitte beenden....","Bitte beenden Sie Outlook, bevor die Anmeldung komplett ausgeführt wird." & @CRLF & @CRLF & "Oder klicken Sie auf OK und outlook wird automatisch beendet")
    If ProcessExists("outlook.exe") Then
    SplashTextOn("Ein Moment bitte...",@CRLF & "Outlook wird gestoppt.......","-1","100","-1","-1",0,"","","")
    Sleep(500)
    ProcessClose("outlook.exe")
    Sleep(500)
    SplashOff()

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

    Else

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

    EndIf
    EndIf

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

    GUICtrlSetData($lbl_info,@CRLF &@CRLF & "Outlook AddIns werden aktiviert.")
    Sleep(500)

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

    RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Office\Outlook\AddIns\X.ECM.OutlookAddIn","LoadBehavior","REG_DWORD","00000003")
    RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Office\InfoPath\AddIns\X.ECM.InfoPathAddIN","LoadBehavior","REG_DWORD","00000003")

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

    GUICtrlSetData($lbl_info,@CRLF & @CRLF & "Outlook AddIns aktiv.")
    _WriteLogData("Oulook Addins aktiviert.")
    Sleep(500)
    GUICtrlSetData($fortschritt, 95)
    Return
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;~ Controls verstecken
    Func _Ausblenden()

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

    GUICtrlSetState($fortschritt, $gui_hide)
    GUICtrlSetState($lbl_fortschritt, $gui_hide)
    GUICtrlSetState($btn_verbinden, $gui_hide)
    GUICtrlSetState($lbl_passwort, $gui_hide)
    GUICtrlSetState($Label1, $gui_hide)
    GUICtrlSetState($Group1, $gui_hide)
    GUICtrlSetState($radio_dsl, $gui_hide)
    GUICtrlSetState($radio_umts, $gui_hide)
    GUICtrlSetState($chk_showpw, $gui_hide)
    _WriteLogData("Controls ausgeblendet.")
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ;Controls einblenden

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

    Func _Einblenden()
    GUICtrlSetState($fortschritt, $gui_show)
    GUICtrlSetState($lbl_fortschritt, $gui_show)
    GUICtrlSetState($Label1, $gui_show)
    GUICtrlSetState($lbl_passwort, $gui_show)
    GUICtrlSetState($btn_verbinden, $gui_show)
    GUICtrlSetState($Group1, $gui_show)
    GUICtrlSetState($radio_dsl, $gui_show)
    GUICtrlSetState($radio_umts, $gui_show)
    GUICtrlSetState($chk_showpw, $gui_show)
    _WriteLogData("Controls eingeblendet.")

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    ; Exitus
    Func _Terminate()
    Exit 0
    _WriteLogData("XConnect beendet")
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    Func _nichts()
    ; die sit eine Nichtfunktion:-)
    ;wird gebraucht um das HotKeySet ESC = _Termiate wieder zurückzusetzen.
    ;Damit die das $childform nicht "versehentlich mit ESC schliessen...
    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------
    Func _showpw()

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

    If GUICtrlRead($chk_showpw) = $GUI_CHECKED Then
    _GUICtrlEdit_SetPasswordChar($lbl_passwort)
    GUICtrlSetState($lbl_passwort,$GUI_FOCUS)
    Else
    _GUICtrlEdit_SetPasswordChar($lbl_passwort, "*") ; hier das "*" verändern
    GUICtrlSetState($lbl_passwort,$GUI_FOCUS)
    EndIf
    _WriteLogData("Passwort angezeigt.")

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

    EndFunc

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

    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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

    Func _DeleteFiles()

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

    FileDelete(@ScriptDir & "\*.jpg")
    _WriteLogData("JPGs wurden gelöscht")
    FileDelete(@ScriptDir & "\*.wav")
    _WriteLogData("WAV wurde gelöscht")

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

    EndFunc
    ;-------------------------------------------------------------------------------------------------------------------------------------------------------------

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


    :rock: