1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. HalleMike

Beiträge von HalleMike

  • Zugriff auf ein Element der Google-Startseite

    • HalleMike
    • 12. November 2015 um 09:49

    Hallo chesstiger!
    Ja und erst einmal vielen Dank für die Idee. Das Problem ist nur, dass ich nicht weiß, wie ich da vorgehen muss, da keine Erfahrung mit diesem AddOn und CSS habe. Im Allgemeinen sind sich ja die Programmiersprachen ähnlich aber eben nur ähnlich. Vielleicht hast du ja die Muße mich da mal anzustoßen, damit ich weiß, wie vorzugehen ist.
    Trotzdem ist das Problem über Autoit zu lösen, nicht uninteressant. Warum komme ich nicht an dieses Button heran?
    Ich würde mein Thema also nocht als erledigt betrachten.

    HalleMik

  • Zugriff auf ein Element der Google-Startseite

    • HalleMike
    • 11. November 2015 um 21:48

    Hallo zusammen,
    mich nervt momentan ungemein diese blöde Abfragerei: "Hinweis zum Datenschutz bei Google". Nun möchte ich auf das Element (rot markiert): "g-flat-button" - dahinter verbirgt sich der Klick auf: "Ich möchte das später lesen" - zugreifen, um mir einen eigenen Firefox-Start zu basteln bei dem dieser Klick automatisch durchgeführt wird.
    Leider gelingt es mir nicht. Ich habe es mit _FFClick() versucht - ohne Erfolg! Vielleicht hat ja jemand eine Idee.
    Hier das HTML-Script, auf das ich zugreifen möchte:

    Spoiler anzeigen


    <!DOCTYPE html>
    <html lang="de" itemtype="http://schema.org/WebPage" itemscope="">


    <head></head>
    <body id="gsr" class="hp vasq" onload="try{if(!google.j.b){document.f&&document.f.q.focus();documen…if(document.images)new Image().src='/images/nav_logo242.png'">
    <div id="viewport" class="ctr-p">
    <div id="doc-info" data-jiis="cc"></div>
    <div id="cst" data-jiis="cc"></div>
    <a style="left:-1000em;position:absolute" href="/setprefs?suggon=2&prev=https://www.google.de/?gws_rd%3Dssl&sig=0_iI_3NrGN28S9A5RVIlP_pzX024o%3D">


    Wenn Sie ein Bildschirmleseprogramm verwenden, kli…


    </a>
    <textarea id="csi" style="display:none"></textarea>
    <script>


    if(google.j.b)document.body.style.visibility='hidd…


    </script>
    <div id="searchform" class="jhp big">
    <script>


    (function(){var _j=1250;try{var s=document.getElem…


    </script>
    <style>


    div#searchform{min-width:980px;z-index:103}div.sfb…


    </style>
    <div id="gb" class="gb_T"></div>
    <div class="sfbg nojsv" style="margin-top:-15px"></div>
    <form id="tsf" class="tsf" role="search" onsubmit="return q.value!=''" name="f" method="GET" style="overflow:visible" action="/search">


    <input type="hidden" name="sclient" value="psy-ab"></input>
    <div id="tophf" data-jiis="uc" data-jibp=""></div>
    <div class="tsf-p">
    <div id="logocont" class="nojsv logocont"></div>
    <div class="sfibbbc"></div>
    <div class="jsb" style="padding-top:18px">
    <center></center>
    </div>
    </div>
    <input type="hidden" name="oq"></input>
    <input type="hidden" name="gs_l"></input>
    <input type="hidden" name="pbx" value="1"></input>
    </form>
    </div>
    <div id="gac_scont"></div>
    <div id="main" class="content" data-jiis="cc">
    <span id="body" class="ctr-p">
    <center>
    <div id="lga" style="height:233px;margin-top:89px">
    <div style="padding-top:109px"></div>
    </div>
    <div style="height:118px"></div>
    <div id="prm-pt" style="margin-top:12px" data-jiis="uc" data-jibp="h"></div>
    </center>
    </span>
    <div id="footer" class="ctr-p">
    <div id="fbarcnt" data-jiis="uc" data-jibp="h" style="height: 137px; visibility: visible;">
    <style>


    .fmulti{}._dQc{bottom:0;left:0;position:absolute;r…


    </style>
    <div id="footcnt">
    <div id="fbar" class="_dQc _E2" style="bottom: 0px; position: absolute;">
    <div class="fbar">
    <div id="cnsi" class="r-iHZSz5PLHrNU" jsl="$t t-ymYd1Vpu-78;$x 0;" data-rtid="iHZSz5PLHrNU" jsaction="dg_dismissed:r.3l2wGYCikXw;dg_not_dismissed:r.KxDw91T2YKs"></div>
    <div class="r-i93u8cSa6Mlg" jsl="$t t-OPsc1yYzuIw;$x 0;">
    <div id="cnsh" class="_vGg i93u8cSa6Mlg-CCX4oQBjiOU" data-ved="0CAkQsmRqFQoTCJX-1NXyiMkCFcUVDwodZncBBQ" style="display: block;">
    <div class="_eIg">
    <div class="_YWg"></div>
    <div class="_tLg">
    <div class="_gIg">


    Hinweis zum Datenschutz bei Google


    </div>
    <div class="_sLg">
    <div class="_g0g">
    <g-flat-button id="cnsd" class="_yKg _Ihg _Lhg" data-ved="0CAoQtGRqFQoTCJX-1NXyiMkCFcUVDwodZncBBQ" tabindex="0" role="button" style="color:#4285f4" jsl="$x 1;" data-rtid="i93u8cSa6Mlg" jsaction="r.qM6dp3zmEyw">


    Ich möchte das später lesen


    </g-flat-button>
    <div class="_h0g"></div>
    </div>
    </div>
    </div>
    </div>
    </div>
    </div>
    <span id="fsr">
    <a class="_Gs" href="//www.google.de/intl/de/policies/privacy/?fg=1">


    Datenschutzerklärung


    </a>
    <a class="_Gs" href="//www.google.de/intl/de/policies/terms/?fg=1">


    Nutzungsbedingungen


    </a>
    <span style="display:inline-block;position:relative">
    <a id="fsettl" class="_Gs" jsaction="foot.cst" role="button" aria-expanded="false" aria-controls="fsett" href="https://www.google.de/preferences?hl=de">


    Einstellungen


    </a>
    <span id="fsett" style="display:none"></span>
    </span>
    </span>
    <span id="fsl"></span>
    </div>
    </div>
    </div>
    </div>
    </div>
    <div id="footc" data-jiis="uc" data-jibp="h"></div>
    </div>
    <script>


    this.gbar_=this.gbar_||{};(function(_){var window=…


    </script>
    <div class="gb_Ja"></div>
    <style>


    .gb_Ja{display:none!important}@-moz-keyframes gb__…


    </style>
    <script>


    (function(){var ctx=[] ;google.jsc.x(ctx);})();


    </script>
    <script>


    (function(){function k(a){++b;a=a||window.event;go…


    </script>
    <div id="lfootercc" data-jiis="cc"></div>
    </div>
    <script src="/xjs/_/js/k=xjs.qd.de.n-55WuW3erw.O/m=abd,sy99,sy98,sy97,sy1…IhBhMQ/rt=j/d=0/t=zcms/rs=ACT90oHnxufdrpZxC9pidcLJN87km_GzSQ" gapi_processed="true"></script>
    </body>
    </html>


    Mein Versuch war:

    Spoiler anzeigen
    Code
    #include <ff.au3>
    
    
    _FFStart("https://www.google.de/?gws_rd=ssl")
    If _FFIsConnected() Then
    _FFClick("cnsd","id")
    endif


    Ich hoffe auf Eure Hilfe. Bitte keine Antworten wie: "Warum willst Du das haben?" o.Ä.
    Ich will's halt!


    HalleMike

  • Problem mit _IEFormSubmit()

    • HalleMike
    • 30. Dezember 2014 um 22:13

    Hallo alpines,
    vielen Dank für die Anwort. Den Sourcecode kann ich nicht so ohne Weiteres veröffentlichen, da es sich dabei um meinen Bankzugang handelt. Im Übrigen ist das auch gar nicht nötig, da das Problem ja erst seit ein paar Tagen auftritt. Und nun das Kuriose:
    Unter WinXP und IE8 funktioniert das script auch weiterhin ohne Fehler. Ich vermute nun, dass eines der Microsoft-Updates aus Dezember dafür verantwortlich ist, dass der Befehl _IEFormSubmit() unter Win7, Win8.1 und IE11 nicht mehr korrekt, besser gar nicht mehr, ausgeführt wird.
    Ich hatte mich ans Forum in der Hoffnung gewandt, dass mglw. auch bei Anderen dieser Fehler aufgetreten ist und es vielleicht schon eine Lösung gibt.
    Zwischenzeitlich versuche ich das Problem mit Hilfe von _IEAction() zu umgehen.
    Vielleicht hat ja doch jemand 'ne hilfreiche Idee......

  • Problem mit _IEFormSubmit()

    • HalleMike
    • 29. Dezember 2014 um 17:36

    Hallo, liebe Autoit-Gemeinde,
    habe mir ein AutoLogin geschrieben, dass auch bis "vor Weinachten" einwandfrei funktionierte.
    Heute stellte ich fest, dass mein Script nach dem ersten _IEFormSubmit(...) - Aufruf einach nicht mehr weiter abgearbeitet wird.
    Keine Fehlermeldung, kein Garnichts!
    PC läuft mit win8.1 & IE 11 vers. 11.0.9600.17498.
    Hat jemand 'ne Idee, was da jetzt auf einmal schiefläuft?

  • Automatisches Login bei Yahoo

    • HalleMike
    • 7. August 2014 um 16:54

    Hallo 'haendler',
    ich habe Deinen Vorschlag aufgegriffen und gehe mal davon aus, dass die Funktion "Angemeldet bleiben" damit deaktiviert ist, obwohl der Haken in der "Quasi-Checkbox" erhalten bleibt.
    Verstehen tue ich es nicht, dafür reichen meine Kenntnisse dann wohl doch nicht aus. Ich hätte doch gerne gewußt, wie man die bewußte Stelle im HTML-Code der WEB-Site mit einem AutoIt-Script erreichen kann....

    Aber trotzdem vielen Dank noch einmal.

    HalleMike

  • Automatisches Login bei Yahoo

    • HalleMike
    • 5. August 2014 um 11:20

    Vielen Dank für die Antworten.
    Die von "heandler" ist interessant, zeigt mir aber nicht wirklich, ob ich nun angemeldet bleibe oder nicht.
    Vielleicht hilft das dem Profi weiter: Es ändert sich, wenn man den Haken in der der "Quasi-Checkbox" herausnimmt auch die im Bild markierte Zeile
    <span id="plabelC" class="checkbox lg-sprite checked"></span>
    in
    <span id="plabelC" class="checkbox lg-sprite"></span>
    Ich habe auch im FF HTML-Editor einfach mal das "checked" in "unchecked" geändert. Auch da verschwindet der Haken in der "Checkbox".
    Bloß, wie komme ich da über mein AutoIt-Script ran? Ich hab keinen Plan!

  • Automatisches Login bei Yahoo

    • HalleMike
    • 4. August 2014 um 17:43

    Liebe AutoIt-Gemeinde,
    Habe mir ein Autologin für Yahoo-Mail gebastelt, das auch soweit funktioniert:

    Spoiler anzeigen
    C
    #include <ff.au3>
    Global $_FF_ERROR_MSGBOX = False
    #include <string.au3>
    _FFStart();"https://login.yahoo.com/config/login_verify2?.intl=de&.redir=ymmapi9&.clntymver=2004.11.23.1&.cldefstat=Def0&.src=ym","default",1)
    If _FFConnect(Default, Default, 3000) Then
    	_FFOpenURL("https://login.yahoo.com/config/login_verify2?.intl=de&.redir=ymmapi9&.clntymver=2004.11.23.1&.cldefstat=Def0&.src=ym")
    	_FFLoadWait()
    	Sleep(100)
    	Local $titel = WinGetTitle("")
    	WinActivate($titel)
    	Local $setvalue1 = [eMailadresse@yahoo.de] ;verschlüsselt
    	Local $setvalue2 = [PassWord] ;verschlüsselt
    	_FFSetValue($setvalue1, "login", "name")
    	Sleep(100)
    	_FFSetValue($setvalue2, "passwd", "name")
    	Sleep(100)
    	;_FFFormCheckBox("pLabelC", false, 0, "index")
    	;_FFClick("Angemeldet bleiben", "name")
    	;Sleep(5000)
    	_FFFormsubmit()
    	WinActivate($titel)
    
    
    Else
    	MsgBox(16, "Aufruf Yahoo-Mail", "Es ist ein Fehler aufgetreten." & @LF & "Der Vorgang wird abgebrochen.")
    EndIf
    Exit
    Alles anzeigen


    Leider enthält das Yahoo-Anmeldefenster ein CheckButton "Angemeldet bleiben", das standardmäßig immer aktiivert ist. Dies möchte ich innerhalb meines Login-Aufrufes ändern. Leider gelingt mir der Zugriff auf die Checkbox nicht.
    Im nachfolgenden Bild habe ich zum besseren Verständnis die Stelle im HTML-Code der Webseite, die die Checkbox darstellt, markiert:
    (Siehe Dateianhang)
    Wie komme ich an diese CheckBox heran?
    Meine im Quellcode (Spoiler) auskommentierten Versuche waren ohne Erfolg.
    Für einen helfenden Vorschlag wäre ich sehr dankbar.
    HalleMike

    Dateien

    YahooLogIn.jpg 338,65 kB – 0 Downloads
  • _IECreateEmbedded Fenster ohne vertikaler Scrollbar

    • HalleMike
    • 19. Januar 2014 um 12:04

    Gut gefragt, Mister misterspeed,
    nur leider beantwortet es nicht meine Fragen, warum die Skriptzeile 76
    $oIE.document.body.scroll = "no"
    nicht funktioniert und ob es vielleicht eine andere Lösung gibt, die vertikale Scrollbar auszublenden.

  • _IECreateEmbedded Fenster ohne vertikaler Scrollbar

    • HalleMike
    • 19. Januar 2014 um 10:17

    Hallo,
    ich habe folgendes Problem und bitte um Mithilfe bei der Lösung.
    Im nachstehenden Code bleibt die Anweisung
    $oIE.document.body.scroll = "no" in Zeile 76
    wirkungslos.

    Spoiler anzeigen
    [autoit]


    #NoTrayIcon
    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_UseUpx=n
    #AutoIt3Wrapper_Res_Language=1031
    #AutoIt3Wrapper_AU3Check_Stop_OnWarning=y
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #include <ie.au3>
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    Local $msg = "", $titel = "Währungsrechner CAD => EUR", $valut1, $valut2
    Local $oIE = _IECreateEmbedded()
    #Region ### START Koda GUI section ### Form=
    local $Form1 = GUICreate("Währungsrechner CAD <=> EUR", 620, 660, -1, -1, BitOR($WS_OVERLAPPEDWINDOW, $WS_VISIBLE, $WS_CLIPSIBLINGS, $WS_CLIPCHILDREN))
    Local $Label1 = GUICtrlCreateLabel("Wählen Sie Ausgangs- und Zielwährung und geben" & chr(13) & _
    "Sie den Betrag ein, der umgerechnet weden soll." & chr(13) & _
    "(Grundlage ist der Währungsrechner der TARGO-Bank.)", 10, 10, 290, 48)
    Local $Group1 = GUICtrlCreateGroup("Auswahl", 310, 8, 120, 70)
    Local $Radio1 = GUICtrlCreateRadio("CAD => EUR", 325, 30, 100, 17)
    Local $Radio2 = GUICtrlCreateRadio("EUR => CAD", 325,54, 100, 17)
    Local $Label2 = GUICtrlCreateLabel("Umrechnungs-" & chr(13) & "betrag:", 10, 64, 70, 32)
    Local $Input1 = GUICtrlCreateInput("500", 90, 70, 201, 21)
    Local $Button1 = GUICtrlCreateButton("Umrechnen", 470, 50, 97, 25)
    Local $Button2 = GUICtrlCreateButton("Beenden", 470, 16, 97, 25)
    Local $GUIActiveX = GUICtrlCreateObj($oIE, 10, 100, 600, 550)
    GUISetState()
    #EndRegion ### END Koda GUI section ###
    GUICtrlSetState($Radio1,$GUI_CHECKED)
    GUICtrlSetState($Button1, $GUI_FOCUS)
    While 1
    Local $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE ; x im Fenster
    Exit
    Case $Button2 ;Cancel
    Exit
    Case $Button1 ; OK
    Local $oInput = GUICtrlRead($Input1)
    If $oInput = "" Then
    $msg = MsgBox(37, $titel, "Es wurde kein Umrechnungsbetrag eingegeben." & chr(13) & _
    "Soll der Vorgang wiederholt werden?")
    Switch $msg
    Case 2
    Exit
    Case 4
    GUICtrlSetData($Input1, "Betrag als gültige Zahl eingeben")
    EndSwitch
    ElseIf $oInput <> "" Then
    $j = 0
    for $i = 1 to StringLen($oInput)
    If Not ((Asc(StringMid($oInput, $i, 1)) >= 48 and Asc(StringMid($oInput, $i, 1)) <= 57) or Asc(StringMid($oInput, $i, 1)) = 44) Then
    $j = $j + 1
    EndIf
    Next
    If $j > 0 Then
    $msg = MsgBox(37, $titel, "Es wurde keine gültige Zahl zur Umrechnung eingegeben." & chr(13) & _
    "Soll der Vorgang wiederholt werden?")
    Switch $msg
    Case 2
    Exit
    Case 4
    GUICtrlSetData($Input1, "Betrag gültige als Zahl eingeben")
    EndSwitch
    Else
    If GUICtrlRead($Radio1) = 1 Then
    $valut1 = "CAD"
    $valut2 = "EUR"
    ElseIf GUICtrlRead($Radio2) = 1 Then
    $valut1 = "EUR"
    $valut2 = "CAD"
    EndIf
    If IsObj($oIE) Then
    _IENavigate($oIE,"https://investments.targobank.de/ciminfo/www/CIWI0294.html",1)
    $oIE.document.body.scroll = "no"
    $oForms = _IEFormGetCollection($oIE, 1)
    $oForm = _IEFormElementGetObjByName($oForms, "Value_FROM")
    _IEFormElementSetValue($oForm, $oInput)
    $oForm = _IEFormElementGetObjByName($oForms, "ID_CURRENCY_FROM")
    _IEFormElementOptionSelect($oForm, $valut1, 1,"byValue")
    $oForm = _IEFormElementGetObjByName($oForms, "ID_CURRENCY_TO")
    _IEFormElementOptionSelect($oForm, $valut2, 1,"byValue")
    _IEFormImageClick($oIE,"Betrag umrechnen", "alt")
    EndIf
    EndIf
    EndIf
    EndSwitch
    WEnd
    Exit

    [/autoit]


    Wo liegt mein Fehler? Gibt es dafür vielleicht noch eine andere Lösung?
    Meine besherigen Nachforschungen zu Alternativen zum Thema waren bislang erfolglos.
    Ich verwende "noch" Windows xp Sp3 und IE8

  • IE8 Internetoption auslesen

    • HalleMike
    • 19. August 2013 um 11:48

    Hallo BIOBAUA,
    vielen Dank, das war's ...
    Gr., HalleMike

    !! Thema ist damit beendet !!

  • IE8 Internetoption auslesen

    • HalleMike
    • 18. August 2013 um 18:12

    Hallo, ich möchte gerne über ein Script auslesen, ob die Option im IE8:
    "Internetoptionen\Sicherheit\Internet\Stufe anpassen\Verschiedenes\Gemischte Inhalte anzeigen\Aktivieren"
    bereits aktiviert ist oder nicht.

    Wie man dorhin via Script navigieren kann, habe ich bereits herausgefunden

    Code
    send("#r") 
    WinWaitActive("Ausführen") 
    send("inetcpl.cpl") 
    send("{ENTER}") 
    WinWaitActive("Eigenschaften von Internet") 
    send("^{TAB}") 
    WinWaitActive("Eigenschaften von Internet", "Sicherheit") 
    send("!a") 
    WinWaitActive("Sicherheitseinstellungen - Internetzone") 
    For $i=1 To 129 
    send("{DOWN}") 
    Next
    Alles anzeigen

    Wie nun aber den Staus auslesen?

    Weiss jemand wie, wenn ja, bitte Antwort mit Code.

  • Embedded Window & Tabulatortastenfunktion zur Ansteuerung der Ctrl's in GUI

    • HalleMike
    • 24. Juni 2012 um 19:36

    Hallo Reinhard,
    zuerst, vielen Dank für Deine Mühe und Geduld. Habe Deinen Vorschlag modifizeirt in mein "Programm" eingebaut; funktioniert auch. Nun tun sich aber 2 neue Probleme auf:
    1. Die "Rückwärtsauswahl" (Shift+Tab) geht natürlich noch nicht, da bin ich aber schon am Basteln und auf dem richtigen Weg.
    2. Wie kriege ich das hin, dass ich die mit TAB durchgeführte Button-Auswahl mit 'ENTER' bestätigen kann? Bis jetzt muss ich einen Mausklick vornehmen. But I'm looking forward optimistical, knowing even therefore you'll have a solution.

    In diesem Sinne und bis neulich ....
    LG., Michael
    Lösung für "vorwärts" und "rückwärts" im CHILD-Window. Ich denke, so geht's.

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <ie.au3>
    DIM $mainGui
    main()
    func main()
    $mainGUI = GUICreate("Main", 400, 400, -1, -1, $WS_OVERLAPPEDWINDOW + $WS_CLIPCHILDREN + $WS_CLIPSIBLINGS)
    GUISetStyle(BitOR($WS_MINIMIZEBOX, $WS_MAXIMIZEBOX, $WS_CAPTION, $WS_SIZEBOX, $WS_SYSMENU))
    $btn_Child = GUICtrlCreateButton("Child",20,20,40,20)
    $btn_action = GUICtrlCreateButton("Action",80,20,40,20)
    $oIE = _IECreateEmbedded()
    GUICtrlCreateObj($oIE, 5, 50, 380, 200)
    _IENavigate($oIE, "www.autoit.de")
    GUISetState()
    While 1
    $msg = GUIGetMsg()
    Switch $msg
    Case $GUI_EVENT_CLOSE
    Exit
    case $btn_action
    msgbox(0,"","Action")
    case $btn_Child
    Child()
    EndSwitch
    WEnd
    endfunc
    func Child()
    $ChildGui = GUICreate("Child",200,200,-1,-1, -1, 0, $mainGUI)
    $inp_1 = GuiCtrlCreateInput("",5,5,80,20)
    $inp_2 = GuiCtrlCreateInput("",5,30,80,20)
    $btn_Ok = GUICtrlCreateButton("Ok",10,60,40,20)
    $btn_Quit = GUICtrlCreateButton("Quit",55,60,40,20)
    GUISetState()
    local $tk_focus = GuiCtrlCreateDummy()
    Local $tk_focus1 = GuiCtrlCreateDummy()
    Dim $AccelKeys[2][2]=[["{TAB}", $tk_focus], ["+{TAB}", $tk_focus1]]
    GUISetAccelerators($AccelKeys)
    local $ct = 1
    While 1
    $msg = GUIGetMsg()
    Switch $msg
    Case $GUI_EVENT_CLOSE, $btn_quit
    ExitLoop
    case $btn_OK
    ;......
    ;......
    ExitLoop
    case $tk_focus
    if $ct = 4 Then $ct = 0
    $ct += 1
    case $tk_focus1
    if $ct = 1 Then $ct = 5
    $ct -= 1
    EndSwitch
    if $ct = 1 then GUICtrlSetState ( $inp_1, $GUI_FOCUS )
    if $ct = 2 then GUICtrlSetState ( $inp_2, $GUI_FOCUS )
    if $ct = 3 then GUICtrlSetState ( $btn_Ok, $GUI_FOCUS )
    if $ct = 4 then GUICtrlSetState ( $btn_quit, $GUI_FOCUS )
    WEnd
    GUIDelete($ChildGui)
    GUISwitch($mainGUI)
    endfunc

    [/autoit]


    Ist also "nur noch" das Problem "ENTER"-Taste als Bestätigung für die getroffene Tabulator-Auswahl im CHILD-Window -> CHIL-Window ohne Maus!
    LG., Michael
    Hab' schon mal selber versucht, die Entertaste ins GUI zu integrieren, lässt sich aber bestimmt noch optimieren:

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <ie.au3>
    ; Definiton GUI ....
    Local $tk_enter = GUICtrlCreateDummy() ;<== 'Enter' executes chosen focused Button
    Dim $AccelKeys[1][2]=[["{ENTER}", $tk_enter]
    GUISetAccelerators($AccelKeys)
    while 1
    local $msg = GUIGetMsg()
    switch $msg
    case $GUI_EVENT_CLOSE
    exit
    case $tk_enter
    local $focus = ControlGetFocus($GUIName)
    switch $focus
    case "Edit1"
    ;code
    case "Button1"
    ;code
    EndSwitch
    EndSwitch
    wend

    [/autoit]


    Würde mich sehr über Deine Meinung freuen
    LG., Michael

  • Embedded Window & Tabulatortastenfunktion zur Ansteuerung der Ctrl's in GUI

    • HalleMike
    • 22. Juni 2012 um 16:49

    Hallo Reinhard,
    schön, dass Du mich auch im deutschen Forum gefunden hast. Deine Antwort bringt mich ein wenig durcheinander, denke aber, Du hast vor meiner Überarbeitung reagiert. Der Code war zuerst nicht ganz vollständig, Deine Anwort aber zu diesem korrekt. Das oben beschriebene Problem tritt aber in der jetzigen Code-Version auf, also wenn ich aus einer GUI mit embedded Window eine 2. neue GUI aufrufe. Vielleicht bist Du ja so nett und wirfst noch mal einen Blick auf den Programm-Code. Wie gesagt, wenn ich den Code-Teil zwischen #cs und #ce deaktiviere, kann ich mit der Tabulatortaste zwischen den Ctrls navigieren. Wenn aktiviert, dann nicht. Hier nochmal der Code:

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <ie.au3>
    #include <StaticConstants.au3>
    $TestGUI =GUICreate("TestGUI", 800, 600, -1, -1, BitOR($WS_OVERLAPPEDWINDOW, $WS_CLIPSIBLINGS, $WS_CLIPCHILDREN))
    $GUI_Button_Ok = GUICtrlCreateButton("&Weiter", 100, 560, 100, 30)
    $GUI_Button_Can = GUICtrlCreateButton("&Abbrechen", 300, 560, 100, 30)
    ; #cs
    $oIE = _IECreateEmbedded()
    $ActiveX = GUICtrlCreateObj($oIE, 240, 40, 240, 200)
    _IENavigate($oIE, "www.autoit.de")
    GUISetState(@SW_SHOW, $TestGUI)
    ; #ce
    while 1 * Sleep(100)
    $msg = GUIGetMsg(1)
    Select
    Case $msg[0] = $GUI_EVENT_CLOSE
    GUIDelete($TestGUI)
    Exit
    EndSelect
    Select
    case $msg[1] = $TestGUI
    Select
    Case $msg[0] = $GUI_Button_Can
    GUIDelete($TestGUI)
    Exit
    Case $msg[0] = $GUI_Button_Ok
    ExitLoop ;<== ruft die 2. GUI auf
    EndSelect
    EndSelect
    WEnd
    $TestGUI1 = GUICreate("Hier steht ein Text", 500, 300, -1, -1);, BitOr($WS_CAPTION, $WS_POPUP, $WS_TABSTOP));, $WS_EX_TOPMOST)
    GUICtrlCreateLabel("Hier steht noch ein Text", 10, 10, 480, 15, $SS_CENTER)
    GUICtrlCreateLabel("Eingabe 1", 10, 50, 200, 15)
    $inp1 = GUICtrlCreateInput("", 10, 70, 200, 20, 0x0020)
    GUICtrlCreateLabel("Eingabe 2", 10, 120, 200, 15)
    $inp2 = GUICtrlCreateInput("", 10, 140, 200, 20, 0x0020)
    GUICtrlCreateLabel("Eingabe 3", 10, 180, 200, 15)
    $inp3 = GUICtrlCreateInput("", 10, 200, 200, 20, 0x0020)
    $GUI1_Button_Ok = GUICtrlCreateButton("&Weiter", 100, 260, 100, 30)
    $GUI1_Button_Can = GUICtrlCreateButton("&Abbrechen", 300, 260, 100, 30)
    GUICtrlSetState ( $inp1, $GUI_FOCUS )
    GUISetState()
    while 1 * Sleep(100)
    $msg = GUIGetMsg(1)
    Select
    Case $msg[0] = $GUI_EVENT_CLOSE
    GUIDelete($TestGUI1)
    ExitLoop
    EndSelect
    Select
    case $msg[1] = $TestGUI1
    Select
    Case $msg[0] = $GUI_Button_Can
    GUIDelete($TestGUI)
    Exit
    Case $msg[0] = $GUI_Button_Ok
    ExitLoop ;<== weiter zum nachfolgen Code
    EndSelect
    EndSelect
    WEnd
    ; weiterer Code, z.B. Inputs auslesen un verarbeiten
    Exit

    [/autoit]


    Vielen Dank schon mal vorab. LG., Michael (Ps.: Antwort auf eMail folgt)

  • Embedded Window & Tabulatortastenfunktion zur Ansteuerung der Ctrl's in GUI

    • HalleMike
    • 22. Juni 2012 um 10:53

    Hallo Gemeinde,

    habe folgendes Problem:
    GUI erstellt mit einigen Ctrls, wie Button und Inputs. Die Ansteuerung der Ctrls mittels Tabulatortaste in der Reihenfolge ihrer Programmierung funktioniert einwandfrei. Habe nun ein embedded IE-Window _IECreateEmbedde() und GUICtrlCreateObj( ... ) erfolgreich hinzugefügt - mittels _IENavigate() aufgerufene Seite wird auch fehlerfrei angezeigt. Bloß, die Navigation per Tabulatortaste zwischen den den GUI-Ctrls funktioniert nicht mehr. Keine Reaktion mehr bei Tabulatortastendruck!
    Was mach ich falsch? Wo liegt der Fehler? Ich konnte weder etwas dazu "googeln" noch habe ich in der Hilfe etwas Passendes gefunden.

    Hier das Beispiel:

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <ie.au3>
    #include <StaticConstants.au3>
    $TestGUI =GUICreate("TestGUI", 800, 600, -1, -1, BitOR($WS_OVERLAPPEDWINDOW, $WS_CLIPSIBLINGS, $WS_CLIPCHILDREN))
    $GUI_Button_Ok = GUICtrlCreateButton("&Weiter", 100, 560, 100, 30)
    $GUI_Button_Can = GUICtrlCreateButton("&Abbrechen", 300, 560, 100, 30)
    GUISetState(@SW_SHOW, $TestGUI)
    ; #cs
    $oIE = _IECreateEmbedded()
    $ActiveX = GUICtrlCreateObj($oIE, 240, 40, 240, 200)
    _IENavigate($oIE, "www.autoit.de")
    ; #ce
    while 1 * Sleep(100)
    $msg = GUIGetMsg(1)
    Select
    Case $msg[0] = $GUI_EVENT_CLOSE
    GUIDelete($TestGUI)
    Exit
    EndSelect
    Select
    case $msg[1] = $TestGUI
    Select
    Case $msg[0] = $GUI_Button_Can
    GUIDelete($TestGUI)
    Exit
    Case $msg[0] = $GUI_Button_Ok
    ExitLoop
    EndSelect
    EndSelect
    WEnd
    $TestGUI1 = GUICreate("Hier steht ein Text", 500, 300, -1, -1);, BitOr($WS_CAPTION, $WS_POPUP, $WS_TABSTOP));, $WS_EX_TOPMOST)
    GUICtrlCreateLabel("Hier steht noch ein Text", 10, 10, 480, 15, $SS_CENTER)
    GUICtrlCreateLabel("Eingabe 1", 10, 50, 200, 15)
    $inp1 = GUICtrlCreateInput("", 10, 70, 200, 20, 0x0020)
    GUICtrlCreateLabel("Eingabe 2", 10, 120, 200, 15)
    $inp2 = GUICtrlCreateInput("", 10, 140, 200, 20, 0x0020)
    GUICtrlCreateLabel("Eingabe 3", 10, 180, 200, 15)
    $inp3 = GUICtrlCreateInput("", 10, 200, 200, 20, 0x0020)
    $GUI1_Button_Ok = GUICtrlCreateButton("&Weiter", 100, 260, 100, 30)
    $GUI1_Button_Can = GUICtrlCreateButton("&Abbrechen", 300, 260, 100, 30)
    GUISetState(@SW_SHOW, $TestGUI1)
    while 1 * Sleep(100)
    $msg = GUIGetMsg(1)
    Select
    Case $msg[0] = $GUI_EVENT_CLOSE
    GUIDelete($TestGUI1)
    ExitLoop
    EndSelect
    WEnd
    Exit

    [/autoit]

    Zum Nachvollziehen einfach #cs und #ce aktivieren.

    Ich hoffe, jemand kann mir helfen.

    HalleMike

    edit:
    Habe den Quellcode erweitert, damit das Problem auch wirklich beim Aufruf der 2. GUI auftritt.
    HM

  • Problem beim Aufruf eines links aus einem in GUI embedded IE-Fenster

    • HalleMike
    • 13. Juni 2012 um 15:43

    Hallo BugFix,
    Dank für die schnelle Reaktion. Leider kann ich kein Beispiel erstellen, da es sich um Benutzername+Passwort geschützte Internetaufrufe handelt. Aber nochmal zum Verständnis:
    Bei normalem Aufruf, also nicht aus einem Script heraus, komme ich nach Eingabe von Benutzername+Passwort auf meine Banking-Seite. Möchte ich nun bestimmte Kontobewegungen ausdrucken, wähle ich diese aus, klicke auf "Drucken" und es öffnet sich ein neues IE-Fenster, mit meiner zuvor festgelegten Druckauswahl und dem Drucker-Menü von Windows.
    Führe ich die gleichen Schritte aber aus dem embedded Window meiner GUI aus dem Script durch, erscheint nach dem Klick auf "Drucken" nicht meine gestroffenen Druckauswahl nebst Druckermenü, sondern erneut die Anmeldeseite der Bank. Meine zuvor erfolgreich durchgeführte Anmeldung wird beim Klick auf "Drucken" nicht auf das neue Fenster, das eigentlich die Druckauswahl darstellen sollte, übertragen. da liegt das Problem. Habe keine Ahnung, wie vorgehen soll, zumal diese Problem nicht bankgebunden ist. Ich habe mehrer Konten auf verschiedenen Banken zu verwalten und überall ist es dasselbe. Sowie das embedded Window verlassen wird, ist die zuvor erfolgreiche Anmeldung hinfällig. Somit gehe ich davon aus, dass ich irgend etwas im Script vergesse, damit die Anmeldung weiterführend erhalten bleibt.

    MfG., HalleMike

    Der Hinweis auf das InternetExplorer Object ist sicher gut gemeint, aber dafür sind meine Kenntnisse noch weniger ausreichend. Ich habe keine Ahnung, wie damit im Script umgehen muss. HalleMike

  • Problem beim Aufruf eines links aus einem in GUI embedded IE-Fenster

    • HalleMike
    • 13. Juni 2012 um 11:31

    Hallo an alle,

    habe mir einen automatisierten Internet-Bankaufruf als embedded Window in einer GUI programmiert. Funktioniert auch alles tadellos, solange ich mich dabei in der aufgerufenen IE-Instanz befinde. Es gibt da aber auch links auf der Internetseite der Bank, nach deren Aufruf ein neues IE-Fenster geöffnet wird. So bei der "Drucken"-Funktion. Bei einer ganz normalen Anmeldung über Https://www.bank...., manuelle Eingabe der Zugangsdaten gibt es keine Probleme. Bei Klick auf "Drucken" öffnet sich das neue IE-Fenster und ich kann das Gewünschte ausdrucken.
    Versuche ich diesen Vorgang aber innerhalb meiner GUI, im embedded Window, wird beim Aufruf der "Drucken"-Funktion ein erneutes Login verlangt. Ich kann das nicht nachvollziehen. Wo liegt das Problem?
    Das embedded Objekt wir wie folgt gebildet:

    $oIE=ObjCreate("Shell.Explorer.2")
    GUICtrlCreateObj ($oIE, 10, 40, ($VrtlDskWidth - 20), ($VrtlDskHight -130))
    $IE.navigate("Bank-URL")

    Die Variante:

    $oIE=_IECreateEmbedded()
    GUICtrlCreateObj ($oIE, 10, 40, ($VrtlDskWidth - 20), ($VrtlDskHight -130))
    _IENavigate($oIE, "Bank-URL")

    brachte mir das gleiche Ergebnis.

    Vielleicht hat ja jemand eine Idee.

    MfG., HalleMike

  • Automatisierter und beinahe sicherer Zugang zum Internet-Banking

    • HalleMike
    • 2. Juni 2012 um 21:33

    Ist ja alles sicher gut, richtig und schön, wie hier reagiert wurde. Aber keiner, auch nicht einer, hat gesagt: Pass auf und versuch doch mal so.... (gefolgt von 'nem bischen Script)
    Also doch bloß Arroganz°! Das hat nichts mit Dünnhäutigkeit meinerseits zu tun.

    Hilfe bekommt man hier nicht.

    HalleMike

  • Automatisierter und beinahe sicherer Zugang zum Internet-Banking

    • HalleMike
    • 24. Mai 2012 um 11:47

    Hallo "chip",

    hast Du meinen letzten Komentar, besonders den letzten Absatz, nicht verstanden?

    HalleMike

  • Automatisierter und beinahe sicherer Zugang zum Internet-Banking

    • HalleMike
    • 24. Mai 2012 um 11:41

    Hallo an alle, die sich bislang die Zeit genommen haben und danke für die Kritiken und das EINE! Verständnis.

    Zu "Christoph54" und "chip": Ja, es ist sicherer!
    1. Es erfolgt keine Tastatureingabe der sicherheitsrelevanten Daten
    2. Die txt-Datei ist nur solange erreichbar, wie der externe Datenträger erreichbar ist.
    3. Eine ABSOLUTE Sicherheit gibt's eh nicht.
    4. Ich wollte mit diesem Script keinen Preis gewinnen!

    Zu "name22":
    Warum nicht call()? Was ist daran falsch? Immerhin ist, wie mir hier ja schon ein-eindeutig zu verstehen gegeben worden ist, dass das Script durchaus ausbaufähig ist und man kann eventuell den Rückgabewert der Funktion zum Abfangen von Fehlern benutzen....

    Last but not liest zu "Alizame":
    Wenn auch noch jung an Jahren, bist Du derjenige mit dem meisten Verständnis, dem gebotenen Respekt und scheinbar ohne Arroganz.
    Denn: Richtig erkannt - ich bin neu auf diesem Gebiet und wollte eigentlich nur zur Diskussion anregen, aus der sich letztendlich mein Wissenstand vergrößern und natürlich dann auch die Programmierung professioneller werden soll.

    An alle vorher erwähnten und eventuell noch folgende Kommentarschreiber:
    Wenn man hier nur "absolut einmaliges" und "sensationelles" veröffentlichen kann, bin ich tatsächlich verkehrt!
    Und: An die "Profis" - Ihr habt auch alle mal klein angefangen.
    Also: Wer mir bei der Verbesserung des Scripts konstruktiv helfen möchte - Kommentar gerne! An alle anderen - laßt's bleiben!

    MfG., HalleMike

  • Automatisierter und beinahe sicherer Zugang zum Internet-Banking

    • HalleMike
    • 23. Mai 2012 um 21:07

    Hallo,
    hier mal ein Versuch, das Internetbanking zu automatisieren und ein wenig "abhörsicherer" zu machen.
    Alle relevanten Erläuterungen sind im Script als Komentare eingefügt.

    Spoiler anzeigen
    [autoit]


    ; ----------------------------------------------------------------------------
    ;
    ; call Banks
    ; Michael Pusch Programs 2011-2012
    ; tested and compiled May, 19., 2012
    ;
    ; ----------------------------------------------------------------------------
    ; Beschreibung:
    ; Dieses Script wurde erstellt, um Internetbanking zu automatisieren und sicherer zu machen,
    ; da keine Benutzernamen und Bank-ID's über die Tastatur eingegeben werden müssen (Key-Logger!!!)
    ; Die notwendigen Angaben werden aus einer kleinen vorab angelegten externen Textdatei (auf Floppy, CD, Stick ...) via
    ; copy & paste an den entsprechenden Stellen im IE eingegeben.
    ; Nach Beendigung des INet-Bankings wird die Textdatei automatisch geschlossen und zum Entfernen
    ; des externen Datenträgers aufgefordert.
    ; Dieses Script ist zum Aufruf von 3 verschiedenen Geldinstituten gedacht, kann aber mit etwas Aufwand
    ; auf beliebig viele Aufrufe geändert werden.
    ;
    ;============================================================================================
    ; Dieses Script ist so nicht lauffähig!
    ; Es muß vorher an den mit ";<--- Muss angepasst werden" Stellen vom Benutzer angepasst werden
    ;=============================================================================================
    ;
    #NoTrayIcon
    ; benötigte Bibliotheken integrieren
    #include <IE.au3>
    #include <GUIConstantsEx.au3>
    #include <ButtonConstants.au3>
    AutoItSetOption("MustDeclareVars", 1)
    ;
    call(doMiPsBankCalls())
    ;
    Func doMiPsBankCalls()
    ; Definition Variable
    Global $runAppl_1, $runAppl_2, $dlgName, $dlgText, $dlg, $lwFloppy, $ieFenstername, $urlBank, $inFensterNamen_1, $inFensterNamen_2, $inFensterNamen_3
    Global $radioCN_1,$radioCN_2, $radioCN_3, $oButton_1, $oButton_2, $iPath, $i_1, $i_2, $i_3
    ;
    $dlgName = "Bankaufruf"
    $dlgText = "!! ACHTUNG !! ---- !! ACHTUNG !! ---- !! ACHTUNG !!" & chr(13) & _
    "================================" & chr(13) & chr(13) & _
    "Datenträger mit Zugangsdaten eingelegt ?" & chr(13) & chr(13)
    $dlg = MsgBox(33, $dlgName, $dlgText)
    ; Wenn ja, dann Aufruf benutzerdefinierter Dialog zur Auswahl des Geldinstitutes
    ; Die Koordinaten bzw. Abmessungen der Dialogfeldelemente müssen ggf. angepasst werden.
    If $dlg = 1 then
    $lwFloppy = "[Laufwerk, ext. Datenträger]:\" ;<--- Muss angepasst werden
    If DriveStatus($lwFloppy) = "READY" Then
    ; $iPath = "[Laufwerk:\Pfad\" <--- Falls im Dialogfeld Icons verwendet werden sollen ;<--- Muss angepasst werden
    ; $i_1 = "Icon1.ico" <--- Falls im Dialogfeld Icons verwendet werden sollen ;<--- Muss angepasst werden
    ; $i_2 = "Icon2.ico" <--- Falls im Dialogfeld Icons verwendet werden sollen ;<--- Muss angepasst werden
    ; $i_3 = "Icon3.ico" <--- Falls im Dialogfeld Icons verwendet werden sollen ;<--- Muss angepasst werden
    GUICreate("Auswahl Kreditinstitute",270,195)
    GUICtrlCreateGroup("Bitte Bank auswählen:", 10, 10, 250, 145)
    ; GUICtrlCreateIcon($iPath & $i_1,-1,20,30,32,32) <--- Falls im Dialogfeld Icons verwendet werden sollen ;<--- Muss angepasst werden
    ; GUICtrlCreateIcon($iPath & $i_2,-1,20,70,32,32) <--- Falls im Dialogfeld Icons verwendet werden sollen ;<--- Muss angepasst werden
    ; GUICtrlCreateIcon($iPath & $i_3,-1,20,110,32,32) <--- Falls im Dialogfeld Icons verwendet werden sollen ;<--- Muss angepasst werden
    $radioCN_1 = GUICtrlCreateRadio("[Name Geldinstitut_1]", 70, 36, 170, 20) ;<--- Muss angepasst werden
    $radioCN_2 = GUICtrlCreateRadio("[Name Geldinstitut_2]", 70, 77, 170, 20) ;<--- Muss angepasst werden
    $radioCN_3 = GUICtrlCreateRadio("[Name Geldinstitut_3]", 70, 118, 170, 20) ;<--- Muss angepasst werden
    GUICtrlSetState($radioCN_1, $GUI_CHECKED)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $oButton_1 = GUICtrlCreateButton("OK",20,165,80,20)
    $oButton_2 = GUICtrlCreateButton("Cancel",170,165,80,20)
    GUICtrlSetState($oButton_1, $GUI_FOCUS)
    GUISetState(@SW_SHOW)
    While 1
    $dlg = GUIGetMsg()
    If $dlg = $GUI_EVENT_CLOSE Then
    Exit
    ElseIf $dlg = $oButton_1 Then
    GUISetState(@SW_HIDE)
    ExitLoop
    ElseIf $dlg = $oButton_2 Then
    Exit
    EndIf
    WEnd
    ; Die nachfolgenden $inFensterNamen_x - Variablen sind notwending, um alle im IE-Fenster
    ; möglichen Varianten des Banknamens in der später folgenden StringInStr()-Funktion
    ; abfangen zu können. (Beruht auf meinen Erfahrungswerten.)
    if GUICtrlRead($radioCN_1) = 1 Then
    $urlBank = "https://[Loggin Geldinstitut_1]" ;<--- Muss angepasst werden
    $inFensterNamen_1 = "Bank1" ;<--- eindeutiger Teil aus dem Fensternamen, ;<--- Muss angepasst werden
    $inFensterNamen_2 = "bank1" ;<--- eindeutiger Teil aus dem Fensternamen, ;<--- Muss angepasst werden
    $inFensterNamen_3 = StringUpper($inFensterNamen_2)
    EndIf
    If GUICtrlRead($radioCN_2) = 1 Then
    $urlBank = "https://[Loggin Geldinstitut_2]" ;<--- Muss angepasst werden
    $inFensterNamen_1 = "Bank2" ;<--- eindeutiger Teil aus dem Fensternamen, ;<--- Muss angepasst werden
    $inFensterNamen_2 = "bank1" ;<--- eindeutiger Teil aus dem Fensternamen, ;<--- Muss angepasst werden
    $inFensterNamen_3 = StringUpper($inFensterNamen_2)
    EndIf
    If GUICtrlRead($radioCN_3) = 1 Then
    $urlBank = "https://[Loggin Geldinstitut_3]" ;<--- Muss angepasst werden
    $inFensterNamen_1 = "Bank3" ;<--- eindeutiger Teil aus dem Fensternamen, ;<--- Muss angepasst werden
    $inFensterNamen_2 = "bank3" ;<--- eindeutiger Teil aus dem Fensternamen, ;<--- Muss angepasst werden
    $inFensterNamen_3 = StringUpper($inFensterNamen_2)
    EndIf
    $runAppl_1 = "C:\windows\system32\notepad.exe " & "[Laufwerk]:\Zugang.txt" ;<--- Muss angepasst werden
    ; Notepad mit der Zugangs.txt wird gestartet
    Run($runAppl_1, "A:\", @SW_RESTORE)
    ; IE mit "blanken" Fenster wird gestartet. Dies ist notwending, da die IE.au3 die direkte Eingabe
    ; von "https://" nicht unterstützt.
    $dlg = _IECreate("about:blank")
    _IELoadWait($dlg)
    ; ich mag's im Vollbild, daher nachfolgende Send() - Funktion
    send("!{SPACE}x")
    ; jetzt wird das eigentliche Bank-Login an den IE gesendet
    $dlg = _IENavigate($dlg, $urlBank)
    _IELoadWait($dlg)
    AutoItSetOption("WinTitleMatchMode",2)
    ; Die beiden folgenden "While - Wend" - Schleifen ermöglichen im Zusammenhang mit den weiter oben
    ; definierten $inFensterNamen_x - Variablen, dass das Script auf jeden Fall pausiert, solange das
    ; IE-Bank-Fenster geöffnet ist.
    While StringInStr(StringUpper(WinGetTitle($inFensterNamen_1,"")),$inFensterNamen_3) > 0
    WEnd
    While StringInStr(StringUpper(WinGetTitle($inFensterNamen_2,"")),$inFensterNamen_3) > 0
    WEnd
    ; Wenn das IE-Bank-Fenster geschlossen wird .....
    ; Notepad wird aktiviert, dann geschlossen
    $dlg = WinActivate("Zugang.txt - Editor", "")
    $dlg = WinClose("Zugang.txt - Editor", "")
    ; Abfrage, ob noch eine weiteres Geldinstitut besucht werden soll ...
    $dlgText = "Soll ein weiter Bankaufruf getätigt Werden?"
    $dlg = MsgBox(36, $dlgName, $dlgText)
    if $dlg = 6 Then
    ; ...wenn ja, alle Variablen auf "" und erneuter Func - Aufruf
    Call(SetVarOnNothing())
    Call(doMiPsBankCalls())
    EndIf
    ; ... wenn nein, Prüfunf auf Vorhandensein des externen Datenträgers und
    ; ggf. Aufforderung zum Entfernen.
    while DriveStatus($lwFloppy) = "READY"
    $dlgText = "Nicht vergessen:" & chr(13) & "EXTERNEN DATENTRÄGER ENTFERNEN !!"
    $dlg = MsgBox(65, $dlgName, $dlgText)
    If $dlg = 2 Then
    Call(SetVarOnNothing())
    Exit
    EndIf
    WEnd
    ;
    ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ; Starten des "CCleaners" zum entfernen der temp. INet-Dateien
    ; Dies ist ein optionaler Programmteil
    If $dlg = 1 Then
    $runAppl_2 = "[Install-LW:\Install-Pfad\]CCleaner.exe /Auto" ;<--- Muss angepasst werden
    Run($runAppl_2, "", @SW_HIDE)
    EndIf
    ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ;
    ; Wenn bei Start des Scripts der erwartete externe Datenträger nicht verfügbar ist...
    ; Abfrage, ob Vorgang wiederholt werden soll. Alle Variablen werden auf "" gesetzt und
    ; die Func erneut aufgerufen (oder beendet).
    ElseIf DriveStatus($lwFloppy) = "NOTREADY" Then
    $dlgText = "Datenträger mit Zugangsdaten ist nicht eingelegt!" & chr(13) & _
    "Soll der Vorgang wiederholt werden?"
    $dlg = MsgBox(52, $dlgName, $dlgText)
    If $dlg = 6 then
    Call(SetVarOnNothing())
    Call(doMiPsBankCalls())
    EndIf
    EndIf
    EndIf
    ;
    Call(SetVarOnNothing())
    ;
    EndFunc

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

    Func SetVarOnNothing()
    $runAppl_1 = ""
    $runAppl_2 = ""
    $dlg = ""
    $dlgName = ""
    $dlgText = ""
    $lwFloppy = ""
    $urlBank = ""
    $inFensterNamen_1 = ""
    $inFensterNamen_2 = ""
    $inFensterNamen_3 = ""
    $radioCN_1 = ""
    $radioCN_2 = ""
    $radioCN_3 = ""
    $oButton_1 = ""
    $oButton_2 = ""
    $iPath = ""
    $i_1 = ""
    $i_2 = ""
    $i_3 = ""
    EndFunc

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

    Viel Spass beim Ausprobieren ... Für Anregungen, Verbesserungen, Kritik usw. bin ich dankbar.

    MfG.,
    HalleMike

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™