Mailkonten

  • Mahlzeit Kollegen,

    so da ich nun auch schon einige Anfragen gestellt habe wollte ich auch mal ein kleines Projekt abgeben. Da ich auf meiner Arbeit des öfteren mit Kunden zutun habe, die sich eine Mail einrichten. Da habe ich mal ein kleines Tool einfallen lassen.

    Spoiler anzeigen
    [autoit]

    ;######################################
    ;ThomasB Installationshilfe Mailkonto##
    ;######################################
    #include <GuiConstants.au3>
    #include <string.au3>
    #include <file.au3>
    GuiCreate("ADTG Mailkonto Einrichtungstool", 455, 170,-1, -1 , BitOR($WS_OVERLAPPEDWINDOW, $WS_CLIPSIBLINGS))
    $Outlook2007 = @ProgramFilesDir & "\Microsoft Office\Office12\Outlook.exe"
    $Outlook2003 = @ProgramFilesDir & "\Microsoft Office\Office11\Outlook.exe"
    $OutlookXP = @ProgramFilesDir & "\Microsoft Office\Office10\Outlook.exe"
    $Outlook2000 = @ProgramFilesDir & "\Microsoft Office\Office9\Outlook.exe"
    $Express = @ProgramFilesDir & "\Outlook Express\msimn.exe"
    $PID = ProcessExists("Outlook.exe")
    $PID1 = ProcessExists("msimn.exe")
    $Radio_1 = GuiCtrlCreateRadio("Outlook Express", 335, 30, 100, 20)
    $Radio_2 = GuiCtrlCreateRadio("Outlook 2000", 335, 50, 90, 20)
    $Radio_3 = GuiCtrlCreateRadio("Outlook XP", 335, 70, 90, 20)
    $Radio_4 = GuiCtrlCreateRadio("Outlook 2003", 335, 90, 100, 20)
    $Radio_5 = GUICtrlCreateRadio("Outlook 2007", 335, 110, 100,20)
    $Checkbox_1 = GuiCtrlCreateCheckbox("Exchange Server", 20, 110, 100, 40)
    $Label_5 = GuiCtrlCreateLabel("Ihr Name", 20, 20, 90, 20)
    $Input_6 = GuiCtrlCreateInput("", 120, 20, 200, 20);Name
    $Label_6 = GuiCtrlCreateLabel("Benutzername", 20, 40, 90, 20)
    $Input_7 = GuiCtrlCreateInput("", 120, 40, 200, 20);Benutzername
    $Label_7 = GuiCtrlCreateLabel("Passwort", 20, 60, 90, 20)
    $Input_8 = GuiCtrlCreateInput("", 120, 60, 200, 20, $ES_Password);PW
    $Label_8 = GuiCtrlCreateLabel("Mail-Adresse", 20, 80, 90, 20)
    $Input_9 = GuiCtrlCreateInput("", 120, 80, 200, 20);Mail_Adresse
    $Button_10 = GuiCtrlCreateButton("Abbruch", 330, 140, 110, 20)
    $Group_11 = GuiCtrlCreateGroup("Outlook Version", 330, 10, 110, 125)
    GuiSetState()
    While 1
    $msg = GuiGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    ExitLoop
    Case $msg = $Radio_1 = $GUI_CHECKED
    _Express()
    Case $msg = $Radio_2 = $GUI_CHECKED
    _Office2000()
    Case $msg = $Radio_3 = $GUI_CHECKED
    _OfficeXP()
    Case $msg = $Radio_4 = $GUI_CHECKED
    _Office2003()
    Case $msg = $Radio_5 = $GUI_CHECKED
    _Office2007()
    Case $msg = $Button_10
    ExitLoop
    ;;;
    EndSelect
    WEnd
    Exit
    Func _Express()
    $ver = FileGetVersion($Express)
    If $ver < "9" Then
    If $PID1 Then ProcessClose($PID1)
    If WinWaitClose($PID1, 20) Then
    Run($Express)
    Sleep(1000)
    Send('!xk')
    Sleep(1000)
    Send('!ze')
    Sleep(1000)
    Send(GUICtrlRead($Input_6))
    Sleep(500)
    Send('{Enter}')
    Send(GUICtrlRead($Input_9))
    Sleep(500)
    Send('{Enter}')
    Send('pop.kundenserver.de')
    Sleep(500)
    Send('{Tab}')
    Send('auth.smtp.kundenserver.de')
    Sleep(500)
    Send('{Enter}')
    Send('{DEL}')
    Sleep(500)
    Send(GUICtrlRead($Input_7))
    Sleep(500)
    Send('{Tab}')
    Sleep(500)
    Send(GUICtrlRead($Input_8))
    Sleep(500)
    Send('{Enter}')
    Sleep(500)
    Send('{Enter}')
    Sleep(500)
    Send('{TAB 2}{Enter}')
    Send('{DEL}')
    Sleep(500)
    Send(GUICtrlRead($Input_6))
    Sleep(500)
    Send('^{Tab}')
    Sleep(500)
    Send('!u')
    Sleep(500)
    Send('{Enter}')
    Sleep(500)
    Send('!{F4}')
    Else
    MsgBox(64, "Outlook Express" , $Express & " " & "kann nicht geöffenet werden",10)
    Exit
    EndIf
    EndIf
    EndFunc
    Func _Office2000()
    $ver = FileGetVersion($Outlook2000)
    If $ver > "9" Then
    Run($Outlook2000)
    Else
    MsgBox(64, "Outlook 2000" , $Outlook2000 & " " & "kann nicht geöffenet werden",10)
    Exit
    EndIf
    EndFunc
    Func _OfficeXP()
    $ver = FileGetVersion($OutlookXP)
    If $ver > "10" Then
    Run($OutlookXP)
    Else
    MsgBox(64, "Outlook XP" , $OutlookXP & " " & "kann nicht geöffenet werden",10)
    Exit
    EndIf
    EndFunc
    Func _Office2003()
    $ver = FileGetVersion($Outlook2003)
    If $ver > "11" Then
    If $PID Then ProcessClose($PID)
    If WinWaitClose($PID, 10) Then
    Run($Outlook2003)
    Sleep(3000)
    Send ('!xme{ENTER}')
    Sleep(1000)
    Send('!p{ENTER}')
    Sleep(2000)
    ControlClick("E-Mail-Konten", "", 357)
    ControlSend("E-Mail-Konten", "", 357, GUICtrlRead($Input_6))
    Sleep(1000)
    ControlClick("E-Mail-Konten", "", 358)
    ControlSend("E-Mail-Konten", "", 358, GUICtrlRead($Input_9))
    Sleep(1000)
    ControlClick("E-Mail-Konten", "", 350)
    ControlSend("E-Mail-Konten", "", 350, GUICtrlRead($Input_8))
    ControlClick("E-Mail-Konten", "", 370)
    ControlSend("E-Mail-Konten", "", 370, "pop.kundenserver.de")
    ControlClick("E-Mail-Konten", "", 371)
    ControlSend("E-Mail-Konten", "", 371, "auth.smtp.kundenserver.de")
    Send('{Tab}')
    Send('{Del}')
    ControlSend("E-Mail-Konten", "", 355, GUICtrlRead($Input_7))
    Sleep(500)
    Send('{ALTDOWN}t{ALTUP}')
    Sleep(500)
    Send('{Del}')
    ControlSend("Internet-E-Mail-Einstellungen", "", 221, "")
    ControlSend("Internet-E-Mail-Einstellungen", "", 221, GUICtrlRead($Input_6))
    Sleep(2500)
    Send('^{TAB}')
    Sleep(1000)
    Send('{Space}')
    Sleep(1000)
    Send('{Enter}')
    Sleep(1000)
    Send('{Enter}')
    Sleep(1000)
    Send('{Enter}')
    Sleep(1000)
    Send('!ss')
    Send('!{F4}')
    Exit
    Else
    MsgBox(64, "Outlook 2003" , @ProgramFilesDir & " " & "kann nicht geöffenet werden",10)
    Exit
    EndIf
    EndIf
    EndFunc
    Func _Office2007()
    $ver = FileGetVersion($Outlook2007)
    If $ver > "12" Then
    If $PID Then ProcessClose($PID)
    If WinWaitClose($PID, 10) Then
    Run($Outlook2007)
    Sleep(3000)
    Send ('!x')
    Sleep(1000)
    Send("!xkk{ENTER}")
    Sleep(1000)
    Send('!n')
    Sleep(2000)
    ControlClick("Neues E-Mail-Konto hinzufügen", "", 357)
    ControlSend("Neues E-Mail-Konto hinzufügen", "", 357, GUICtrlRead($Input_6))
    Send ('{Tab}')
    Sleep(1000)
    ControlClick("Neues E-Mail-Konto hinzufügen", "", 358)
    ControlSend("Neues E-Mail-Konto hinzufügen", "", 358, GUICtrlRead($Input_9))
    Send ('{Tab}')
    Sleep(1000)
    ControlClick("Neues E-Mail-Konto hinzufügen", "", 350)
    ControlSend("Neues E-Mail-Konto hinzufügen", "", 350, GUICtrlRead($Input_8))
    Send ('{Tab}')
    Sleep(1000)
    ControlClick("Neues E-Mail-Konto hinzufügen", "", 604)
    ControlSend("Neues E-Mail-Konto hinzufügen", "", 604, GUICtrlRead($Input_8))
    Sleep(1000)
    Send('!e')
    Send('{Enter}')
    Sleep(1000)
    Send('{Enter}')
    Sleep(2000)
    ControlClick("Neues E-Mail-Konto hinzufügen", "", 370)
    ControlSend("Neues E-Mail-Konto hinzufügen", "", 370, "pop.kundenserver.de")
    ControlClick("Neues E-Mail-Konto hinzufügen", "", 371)
    ControlSend("Neues E-Mail-Konto hinzufügen", "", 371, "auth.smtp.kundenserver.de")
    ControlClick("Neues E-Mail-Konto hinzufügen", "", 355)
    ControlSend("Neues E-Mail-Konto hinzufügen", "", 355, GUICtrlRead($Input_7))
    ControlClick("Neues E-Mail-Konto hinzufügen", "", 350)
    ControlSend("Neues E-Mail-Konto hinzufügen", "", 350, GUICtrlRead($Input_8))
    Sleep(1000)
    Send('{Tab}{Tab}{Tab}{Tab}{Enter}')
    ControlSend("Internet-E-Mail-Einstellungen", "", 221, "")
    ControlSend("Internet-E-Mail-Einstellungen", "", 221, GUICtrlRead($Input_6))
    Sleep(500)
    Send('{TaB 4}')
    ;Send('{Tab}{Tab}{Tab}{Tab}{Tab}{Right}')
    Sleep(1000)
    Send('{Tab}{Space}')
    Sleep(1000)
    Send('{Enter}')
    Sleep(1000)
    Send('{Enter}')
    Sleep(1000)
    Send('{Enter}')
    Sleep(1000)
    Send('!ss')
    Send('!{F4}')
    Exit
    Else
    MsgBox(64, "ADTG Mailkonto Einrichtungstool" , $Outlook2007 & " " & "kann nicht geöffenet werden",10)
    EndIf
    EndIf
    EndFunc
    ;Ende
    ;######################################
    ;ThomasB Installationshilfe Mailkonto##
    ;######################################

    [/autoit]

    Sicher kann noch einiges verändert werden, auch andere Mailkonten können eingebaut werden

    MFG ThomasB

    MFG ThomasB

    *
    Ich lese viel und gerne (und wenn ich alle Mahnungen durch habe, schmeiße ich sie weg)
    *

    • Offizieller Beitrag

    Hi,

    brauchen Kunden sowas wirklich? :schild4:

    Mir würde ein Start Button fehlen, ich habe mich erschreckt, als ich die CheckBox ausgewählt habe und er gleich losgelegt hat.

    Dann noch Kleinigkeiten:

    $Outlook2000 = @ProgramFilesDir & "\Microsoft Office\Office9\Outlook.exe"

    sowas könnte man der aufrufenden Funktion auch mitgeben, dann brauchst du den Pfad nur einmal anlegen.

    Analog dazu könnte man mit den MsgBoxes verfahren --> immer z.B. fehler() aufrufen und den relevaten Text übergeben. Dann müßte man das drumrum nur einmal pflegen.

    Weiter so!

    So long,

    Mega

    P.S.: Hast du keine Lotus Notes Kunden. :rofl_devil: