Hilfe bei der Programmautomatisierung

  • Hallo Gemeinde,

    ich bräuchte Rat bzw. Hilfe bei der Automatisierung eines Programms.
    Ich muss täglich ein bestimmtes Programm morgens starten, mich anmelden und darin ein paar Aktionen ausführen. Das würde ich gerne automatisieren, da das laden schon 2-3 Min dauert.
    Starten, anmelden habe ich soweit geschafft.
    Aber, die Aktionen im Programm gestalten sich schwierig. Ich kann das im Prinzip nur über die Mouse machen, sprich ich muss in der Menüleiste (Ribbonbar) einen Button drücken.
    Mache ich das mit "MouseClick", dann gehts mal und mal nicht, sprich mal hat der Button dann nur den Fokus, mal wird er korrekt gedrückt. Eine Alternative über ShortCuts etc. gibt es leider nicht.
    Kann ich den Button evtl. noch anders ansprechen? Ich denke da an eine gezielte Windowsnachricht, das ist mir aber zu hoch.
    Evtl. hilft es wenn ich sage das Programm ist in .Net mit dem WPF Framework geschrieben.

    Vielen Dank

    Hans

  • Wenn dein Programm ordentlich implementiert ist, müsstest du es eigentlich mit Tab und Space/Enter bedienen können... hast du das schon ausprobiert?

    Widerstand ist Zwecklos!

    Meine Projekte: Kizzys Controller, 2nd Desktop und Versteckte Dateien Assistent
    Meine Downloadwebsite .

  • Schau dir mal dieses Tutorial an: Klick
    Denke dort wird alles einfach erklärt, was du benötigst für deine Kaffeepause :)

  • Danke @All

    Data
    Das Programm ist nicht von mir und ich kann nicht von einem fixen Startpunkt ausgehen, da der Fokus je nach verlassen des Programms wo anders ist. Somit geht Tab/Enter eben genau nicht. Das hab ich schon vesucht, war auch meine Idee.

    @JaneDoe
    Danke für den Link. Muss ich mal prüfen. Bei mir ist es explizit ein Button in einer RibbonBar - wie in Word - ohne Text nur mit einem Icon

    x0r
    ja, die kann ich auslesen.

    Somit versuche ich das mal und melde erfolg oder misserfolg.

    Danke!

  • Hi nochmal,

    ich mache scheinbar was verkehrt, denn es will nicht.
    Es wird weder die Anwendung erkannt und hervorgeholt, noch der Button darauf geklickt.
    Gibts da noch einen Trick?

    Hier mein code

    Code
    WinWait("ALL_FUTURES_Aug_2012_neu - Desktop 1 - Tradesignal Online Terminal", "ALL_FUTURES_Aug_2012_neu", 15);
    Sleep(1000);
    ControlClick("ALL_FUTURES_Aug_2012_neu - Desktop 1 - Tradesignal Online Terminal", "ALL_FUTURES_Aug_2012_neu", 852814);

    Hier das was das Info-Tool zeigt:

    Vielen Dank

  • Du schreibst, dass das Programm in WPF (Windows Presentation Foundation) programmiert ist.
    Wir haben auch so ein Programm im Geschäft.
    Nach meiner Erfahrung lässt sich dies "nicht" automatisieren.

    Klar, kann man die Fenstergrösse abfragen und dann relativ zum Fenster die Maus bewegen und klicken.
    Aber richtig toll wird das leider nicht.

    Sorry, aber das ist meine Erfahrung!

    Veronesi

  • Leider hast du kein Bild gepostet wie denn das Programm aussieht. Aber bei Ribbonbar denk ich dass der Button den du drücken willst wahrscheinlich auch ein Icon besitzt. relativ gut funktioniert dann Imagesearch, dafür gibt es irgendwo eine Dll und eine *.au3. Ist leider nicht im Standard von Autoit enthalten. Aber damit solltes du den Button suchen können und gezielt an die richtige Stelle klicken lassen.