Suchfunktion in GUI

  • Hallo zusammen,

    ich habe folgendes Problem:

    Ich möchte über Autoit ca. 150 TeamViewer Sessions incl. Windows-Serveranmeldung verwaltbar machen. Ich habe mir bereits eine Gui "gebastelt" in der ich TeamViewer-ID und Kennwort per "copy&paste" einsetze und mit diesen Werten eine Session starte. Ist es möglich sämtliche TeamViewer-IDs so einzupflegen, dass diese über ein DropDown-Menü gestartet werden können bzw. ist es möglich durch eine Suchfunktion bzw. durch eingabe eines Strings die Einträge entsprechend einzugrenzen. Bisher sieht das Ganze so aus:

    [autoit]


    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstants.au3>
    #include <GuiStatusBar.au3>
    #include <GuiConstantsEx.au3>
    #include <WindowsConstants.au3>

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

    $GUI = GUICreate("",200,125, -1, -1)
    $tvidlabel = GUICtrlCreateLabel("TeamViewer ID" , 55, 10)
    $tvid = GUICtrlCreateInput("" ,55,25,90,20)
    $passwdlabel = GUICtrlCreateLabel("Passwort" , 55, 55)
    $passwd = GUICtrlCreateInput("" ,55,70,90,20)
    $connect = GUICtrlCreateButton("Verbinden" ,5,100,90,20)
    $cancel = GUICtrlCreateButton("Abbrechen" ,105,100,90,20)
    GUISetState(@SW_SHOW,$GUI)
    While 1
    $MSG = GUIGetMsg()
    Switch $MSG
    Case $connect
    _Func1 ()
    Case $cancel
    Exit
    Case -3
    Exit
    EndSwitch
    WEnd

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

    Func _Func1 ()
    msgbox(65, "test", $title1)
    ;~ ; TeamViewer Session starten
    RunWait("C:\Program Files (x86)\TeamViewer\Version7\TeamViewer.exe -i " & GuiCtrlRead($tvid) & " --Password meinPasswort")
    Sleep(5000)
    $msgbox = MsgBox(65, "Hinweis", "Bitte Strg+Alt+Entf Button drücken")
    ; Eingabe Benutzername
    Send("meinBenutzer", 1)
    ; Eingabe Kennwort
    Send("{TAB}")
    Send(GuiCtrlRead($passwd), 1)
    ; Klick auf OK
    Send("{TAB}")
    Send("{TAB}")
    Send("{TAB}")
    Send("{ENTER}")
    EndFunc

    [/autoit]

    Über eure Hilfe wäre ich sehr dankbar.

    Gruß
    scheilo

    Einmal editiert, zuletzt von scheilo (1. März 2012 um 11:39)

  • BugFix hat vor einigen Wochen mal ein Script veröffentlicht was ähnlich ist wie die Google instants Search Funktion
    Link

    sollte eigentlich das machen was du möchtest, brauchst ggf noch paar modifikationen ;)
    Gruß Marvin

  • Wie schon gesagt du musst das Script anpassen in diesem Fall würde ich entweder die ersten 5 Zeichen nicht berücksichtigen also dass natürlich so ins Script schreiben, oder immer bei jeder Eingabe schon im Script festgelegt diese 5 Zeichen vorranstellen.. und schon gehts ^^


    EDIT: Musst nur in Zeile 76 etwas ändern
    von:

    [autoit]


    Local $str = ControlGetText($SenseGui, '', $SenseCtrl)

    [/autoit]


    auf:

    [autoit]


    Local $str = '55555'&ControlGetText($SenseGui, '', $SenseCtrl) ;55555 sind deine 5 Zeichen..

    [/autoit]

    Gruß Marvin

    Einmal editiert, zuletzt von Protex (26. Januar 2012 um 17:09)