AutoIt Script läuft nicht durch

  • Hallo,

    vorneweg der übliche Satz. Ich bin absoluter Neuling, aber experimentierfreudig.

    Folgende Situation:

    Ich starte ein Programm, dass mir auf dem Desktop meine Termine aus Outlook darstellt (DeskTask).
    Ich habe im Outlook zwei Profile. Zur richtigen Darstellung muss das korrekte Profil gewählt werden.
    Mein AutoIt Script wird über eine Verknüpfung im Autostart aufgerufen.

    [autoit]


    Run("DeskTask.exe", "", @SW_HIDE)
    WinActivate("Profil auswählen", "&Profilname:")
    WinWaitActive("Profil auswählen")
    ControlCommand("Profil auswählen", "&Profilname:", "REComboBox20W1", "SelectString", "Blacky")
    ControlClick("Profil auswählen", "&Profilname:", "Button2")
    Exit

    [/autoit]


    Dabei bleibt das Script aber irgendwie hängen und im Tray steht "Script paused"
    Wenn ich das Script manuell im Autostart starte, gibt es keine Probleme.
    Nun dachte ich, vielleicht stört irgendetwas wärend des Windowsstarts und habe das Script
    folgendermaßen gestaltet

    [autoit]


    BlockInput (1)
    Run("DeskTask.exe", "", @SW_HIDE)
    WinActivate("Profil auswählen", "&Profilname:")
    WinWaitActive("Profil auswählen")
    ControlCommand("Profil auswählen", "&Profilname:", "REComboBox20W1", "SelectString", "Blacky")
    ControlClick("Profil auswählen", "&Profilname:", "Button2")
    BlockInput (0)
    Exit

    [/autoit]

    Selbes Problem, doch zusätzich kann ich erst wieder auf meinem Rechner arbeiten, wenn ich das Script im TaskManager deaktiviere.

    Vielleicht weiß jemand einen kleinen Tip.

    Gruß

    Jochen

    3 Mal editiert, zuletzt von blacky65 (1. Oktober 2008 um 19:56)

  • Hallo,

    hat leider nichts gebracht. Habe ein Timeout von 15 gesetzt.
    Das einzige was nun passiert, ist das das Tray Symbol nun blinkt (rotes Kreuz)

    Kurze Ergänzung: Das Script macht was es soll. Es startet das Programm korrekt.
    Nur dann läuft es nicht weiter und pausiert.

    Manuell läuft es auch nicht mehr durch. Das kapiere ich nicht mehr.

    Zitat

    opt TrayDebug

    Damit kann ich so nichts anfangen. Google hat mich auch nicht weiter gebracht.

    Gruß

    Jochen

  • Hi,
    Xeno meint TrayIconDebug
    also

    [autoit]

    Opt("TrayIconDebug", 1)

    [/autoit]

    Dann kannst du am Icon von AutoIt sehen, in welcher Zeile sich dein Script gerade befindet.
    Dann weist du natürlich auch, in welcher Zeile es nicht mehr vorangeht.
    Wenn das Icon abwechselnd blinkt (also das rote Keuz), dann ist dein Script einfach pausiert. Du wirst wohl einmal auf das Icon draufgedrückt haben.
    Wenn du das abstellen willst (ist aber in dem Fall nicht unbedingt nötig), dann brauchst du am Scriptanfang

    [autoit]

    Opt("TrayAutoPause", 0)

    [/autoit]
  • Hallo,

    danke für die Erklärung. Dieser Befehl (TrayIconDebug) ist ja Gold wert

    Fehler gefunden

    [autoit]


    WinWaitActive("Profil auswählen")

    [/autoit]

    Da blieb das Script stehen.

    Habe das geschrieben, als ich noch meinen alten Rechner hatte (alte Mühle).
    Da gab es ohne diese Zeile Probleme.
    Habe seit vier Wochen einen aktuellen Rechner.
    Der ist etwas schneller und kommt wohl ohne diese Zeile aus.
    Jetzt läuft das Script schneller durch.

    Danke für die Tipps

    Gruß

    Jochen

  • Hi,
    das ist aber keine Lösung des Problems :)
    Was machst du, wenn dein PC jetzt ausgelastet ist, und es mal 1 sec dauert, bis das Programm offen ist?
    Schau mal nochmal nach, ob sich der Titel villeicht verändert hat, oder irgendso was.

  • Hallo,

    man, da habe ich mich schon gefreut, dass es relativ einfach ist.

    Habe momentan das Problem, dass auch meine beiden anderen Scripte,
    die mit Outlook Profilen zusammenhängen nicht mehr sauber laufen.

    Werde heute Abend mal ohne Vorlage, die Scripte neu erstellen und
    etwas Hirnschmalz investieren.

    AutoIt soll eigentlich nur den richtigen Benutzer im Outlook starten.
    Also automatisch das richtige Profil wählen.

    So funktioniert der Start von DeskTask auch.

    Irgendwo ist da was faul.

    Gruß

    Jochen

  • Hallo,

    danke für die Unterstützung.

    So wie es aussieht, habe ich mit dem Tool Desktasks und meinen
    zwei Outlook Profilen das Problem.

    Wenn ich Outlook für den jeweiligen User mit Script starte,
    funktionieren sie ohne Probleme.

    Wenn vorher Desktasks gestartet wurde, kann Outlook wohl
    die Profile nicht mehr eindeutig zuordnen.

    Somit ist DeskTasks für mich erledigt und dieses Thema
    nichts mehr für dieses Forum.

    Grüße

    Jochen