Programm Installation

  • Hallo,

    ich hab ein Problem mit der Funktion ControlClick, un zwar startet meine Installation zwar aber der weiter Button wird nicht geklickt.

    hier der Quellcode...ist zwar noch nicht viel aber hier stockt es schon...:/

    Spoiler anzeigen
    [autoit]

    Run("C:/Daten/Notes/setup.exe")
    Winwaitactive("Lotus Notes 8.5.1 (Basic) de - Installationsassistent","&Weiter >")
    sleep(5000)
    ControlCLick("Lotus Notes 8.5.1 (Basic) de - Installationsassistent","Ich &akzeptiere die Bedingungen der Lizenzvereinbarung","Button3")
    sleep(500)
    ControlCLick("Lotus Notes 8.5.1 (Basic) de - Installationsassistent","&Weiter >","Button5")

    [/autoit]


    Wäre echt schön wenn mir jemand helfen könnte, ich verzweifel hier.... :/

    DANKE!

    5 Mal editiert, zuletzt von too231 (22. Februar 2011 um 10:18)

  • Hallo too231,

    herzlich willkommen im Forum und viel Spass mit AutoIt.

    Hier kannst du dir die deutsche Hilfe herunterladen.
    Hier gibt es ein AutoIt-Tutorial: http://wiki.autoit.de/wiki/index.php/TutorialSehr hilfreich ist auch das Buch von peethebee

    und jetzt zu deiner Frage: wenn du die Daten aus dem Windows-Infotool hier einstellst, wird es für uns einfacher.

    PS.: falsches Forum, hier werden fertige Skripte vorgstellt @Mod/Admin bitte verschieben

    mfg autoBert

  • Jau vielen dank schon mal für die Hilfreichen Links !

    Hier die Zusammenfassung aus dem Infotool, ich habe den Finder auf den weiter Button gezogen, folgendes kam raus:

    Spoiler anzeigen

    Vielen Dank schonmal !

  • beispiel

    [autoit]


    WinWait("TrafficsCosmo - Desktop Deinstallation","")
    If Not WinActive("TrafficsCosmo - Desktop Deinstallation","") Then WinActivate("TrafficsCosmo - Desktop Deinstallation","")
    WinWaitActive("TrafficsCosmo - Desktop Deinstallation","")
    Sleep(500)
    Send("!j")
    Sleep(2000)
    Send("!s")
    Send("{ENTER}")

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

    gruß gmmg

    Einmal editiert, zuletzt von gmmg (22. Februar 2011 um 15:48)

  • Hi,

    noch ne frage zu deinem quellcode, ich versteh noch nicht ganz was mir der Befehl send genau bringen soll, damit kann ich Tastendrücke senden, aber auf mein Problem versteh ich den Lösungansatz irgendwie nicht... :/

  • Schau dir das Log von au3info und deinen Quellcode doch nochmal an.

    [autoit]

    ControlCLick("Lotus Notes 8.5.1 (Basic) de - Installationsassistent","&Weiter >","Button5")

    [/autoit]

    Au3info sagt nix von button5 *tippgeb*

  • So müsste es nach den Infos des Au3Info Tools gehen.

    [autoit]


    ControlCLick("Lotus Notes 8.5.1 (Basic) de - Installationsassistent","&Weiter >","[CLASS:BUTTON; INSTANCE:3; ID:5990]")

    [/autoit]
  • Hi,

    noch ne frage zu deinem quellcode, ich versteh noch nicht ganz was mir der Befehl send genau bringen soll, damit kann ich Tastendrücke senden, aber auf mein Problem versteh ich den Lösungansatz irgendwie nicht... :/


    Da laut deinem Skript die Tasten ein Hotkey-Kürzel haben könntest du es auch darüber lösen, das Problem ist aber send sendet an das gerad aktive Fenster, wenn also ein DAU davor sitzt und zu einem anderen Anwendung wechselt geht nichts mehr. Man kann zwar auch das umgehen abe die Lösung über Controlxxxxxxx ist die deutlich geschicktere, beachte die Posts von misterspeed und vor allem Molaynox dann sollte es klappen,

    mfg autoBert

    2 Mal editiert, zuletzt von autoBert (23. Februar 2011 um 02:05)

  • Versucht mal ohne dialog, mit den commanline

    setup.exe /s /v"SELECTINSTALLFEATURES='Editors,Activities,CAE,SametimeUI' SELECT_EDITORS=1 /qb+"

    source: AppDeploy

  • Hi,

    ich würde dir raten, dein Setup mit dem InstallShield Tuner für Lotus Notes nach deinen Bedürfnissen anzupassen.
    Danach einfach in Autoit das Setup per Commandline aufrufen und die Transformationsdatei (.mst) auf das Setup anzuwenden.

    Als Beispiel:

    [autoit]

    $setuphomedir = "\\fileserver\setupfiles"
    $setupparameter = "/qb- TRANSFORMS=" & Chr (34) & $setuphomedir & "\Lotus Notes\setup.mst"
    ShellExecuteWait($setuphomedir & "\Lotus Notes\Lotus Notes 8.5.1 de.msi", $setupparameter)

    [/autoit]

    Das ist viel weniger Störungsanfällig!

    Ich hab die Filenamen bei mir sogar in eine .ini-Datei ausgelagert.
    Damit muss ich bei einem Programmupdate nichts am Quellcode ändern, sondern nur den Dateinamen inder .ini kurz editieren.
    Zumindest wenn der Hersteller keine Änderung an den Parametern vorgenommen hat.

    Gruß

    9 Mal editiert, zuletzt von fr4g3r (10. März 2011 um 21:35)