Exe im Hintergrund laufen lassen

  • Achso 🤣 . Allerdings hat _MouseTrap() erstmal nichts mit der Funktion _shellExecuteHidden() zu tun.
    Dies war sicherlich nur ein Beispiel von dir, um zu sagen das du keine Lust auf Experimente hast - verstehe.

    Genau so war es!

    Na gut, wenn du mit deinen zwei Fenstern leben kannst und willst, dann okay. Falls nicht, versuche _shellExecuteHidden() gern, da ist keine große Magie dabei.
    Einfach _shellExecuteHidden($sPath & 'ITConv.exe') aufrufen und im Taskmanager siehst du das die Instanz läuft, aber eben nicht sichtbar. Nun solltest du deine Einstellungen im Programm machen können, ohne das die beiden angesprochenen Fenster aufpoppen.

    Wenn es nicht mehr ist werde ich es natürlich probieren.

    LG Werner

  • Hab da noch was: Webriver firefox

    Wo muss ich hier "--headless" einfügen.

    Hab ein Update gemacht und sieht jetzt so aus.

    Code
    $sDesiredCapabilities = '{"capabilities": {"alwaysMatch": {"browserName": "firefox", "acceptInsecureCerts":true}}}'
    Code
    Func SetupGecko()
       _WD_Option("Driver", "C:\WebDrv22\au3WebDriver-0.11.0\geckodriver.exe")
       _WD_Option('DriverParams' ,  '--log trace --marionette-port 2828')
       _WD_Option('Port', 4444)
       $sDesiredCapabilities = '{"capabilities": {"alwaysMatch": {"browserName": "firefox", "acceptInsecureCerts":true}}}'
    EndFunc

    LG Werner

  • Entweder du nutzt den capabilities JSON string wie folgt:

    oder besser noch du nutzt die _WD_CapabilitiesAdd() function. Dies sieht dann so aus und ist empfohlen damit man beim JSON bspw. keinen Tippfehler machst 😀 :

    Viele Grüße
    Sven

  • Spoiler anzeigen

    #Include <WinAPIEx.au3>

    Local $sPath = "C:\Program Files (x86)\ITN Converter\"

    _shellExecuteHidden($sPath & "ITNConv.exe")

    erhalte Fehlermeldung (undefined function)

    Wenn es das ist was ich vermute.

    Wo finde ich die udf.

    Soll angeblich eingebunden sein

    LG Werner

  • [...] der 2. Code hat funktioniert. Mit dem 1. weiß ich nicht wohin??? [...]

    Ist ehrlich gesagt auch egal, denn die zweite Variante ist die sicherere 👍 .

    Wo finde ich die udf.

    Du machst mich fertig Werner, auf eine witzige Art und Weise 🤣 . Du hast die UDF doch selbst verlinkt: englisches Forum.

    UDF:

    Beispiel von Bluesmaster (Author):

    Viel Erfolg Werner 🤞 .

    Viele Grüße
    Sven

  • Du machst mich fertig Werner, auf eine witzige Art und Weise 🤣 . Du hast die UDF doch selbst verlinkt: englisches Forum.

    Sven

    Entschuldige bitte!

    Das war das 1. mal, dass ich sowas gemacht habe.

    War immer der Meinung, da müsste die .au3 in den Include Ordner.

    Hab ich auch gemacht.

    Ging natürlich nicht!

    Du lachst dich wahrscheinlich kaputt. :ironie:

    Dann hab ich einfach, die Func rauskopiert und siehe da, was für ein Erfolg.

    Ich habe leider auf Grund meines Alters, nie ein Wort englisch gelernt.

    Ich jage alles durch den Translator und da kommt manchmal nix gescheites raus.

    Also wenn ich nochmal dumm frage hab Mitleid mit mir :)

    Viele Grüße

    Werner

  • Hi Windi ,

    alles gut, ich habe ja extra geschrieben das du mich auf eine witzige Art und Weise fertig machst - also alles gut 😀 .

    Kaputt habe ich mich nicht gelacht, war eher ein Schmunzeln. Das du kein englisch kannst, ist auch kein Problem, deswegen sind wir ja hier auch im deutschen Forum.

    Bzgl. translator, ja klar, da bekommt man manchmal seltsames übersetzt. Naja.

    Wenn mich irgendwas wirklich nerven würde, würde ich mich nicht so bemühen zu antworten oder Quellcode bereitstellen, daher habe ich bereits Mitleid bzw. Verständnis trifft es eher, Werner 😀 . Angenehmen Tag heute, bis zu nächsten Frage dann (vielleicht in einem neuen Thread).

    Viele Grüße
    Sven

  • Hi Sven,

    Hab die Funktion mit ausprobiert.

    Code
    _shellExecuteHidden()

    Ist ja wirklich ganz einfach (wenn man's weiß)

    Leider sind da 2 Listboxen drin die mit

    ControlSend( $hFen1,"","[CLASS:ComboBox; INSTANCE:1]" ,"{PGUP}" )

    ControlSend($hFen1, "", 1009, "H")

    ControlSend( $hFen1,"","[CLASS:ComboBox; INSTANCE:1]" ,"{UP}" )

    gesteuert werden.

    Das mag er überhaupt nicht.

    Und hängt sich dort auf.

    Noch irgend eine Idee von dir?


    Lieben Gruß

    Werner

  • Du meinst wenn du dein Programm ausführst, ohne die _shellExecuteHidden() Variante, also nicht versteckt, dann kannst du derzeit mit dem dropdown arbeiten und wenn du im "verstecktem Modus" arbeitest, dann geht das nicht?

    Oder geht es so oder so nicht?

    Viele Grüße
    Sven

  • Wenn ich mit

    ShellExecute($Converter,"", @SW_HIDE)

    ausführe kommen 2 mal die listboxen wie auf dem Bild.

    Alles andere ist versteckt.


    Mit _shellExecuteHidden() bleibt das Prog an den Listboxen hängen.

    Viele Grüße

    Werner

  • Okay, verstanden Werner, dann fällt mir ohne richtiges Testen (setzt voraus ich hätte das Programm installiert, dein Skript etc. - zu viel Aufwand), leider auch nichts mehr ein 😔 .

    Viele Grüße
    Sven

  • Gibt es eine Möglichkeit die Listboxen anders anzusprechen als mit

    ControlSend( $hFen1,"","[CLASS:ComboBox; INSTANCE:1]" ,"{PGUP}" )

    hatte es zuerst mit Send("{PGUP}" )

    Funktioniert beides nicht.

    Sonst lasse ich es einfach wie es ist.

    Vielen Dank für deine Bemühungen und der Geduld mit mir.

    Viele Grüße

    Werner

  • Danke Bugfix,

    gute Idee.

    Spoiler anzeigen

    WinWaitActive("ITN Converter")

    Local $aTest = [60]

    Local $aTest = ControlCommand($hFen1,"ITN Converter", 1009,"GetCount", "")

    ;Local $aTest = ControlListView($hFen1,"ITN Converter",1009,"SelectAll" )

    _ArrayDisplay($aTest)

    MsgBox(0,"",$aTest) ;zeigt 57 an

    ProcessClose("ITNConv.exe")

    exit

    Er zeigt mir an das 57 drin sind.

    Wie kriege ich die in ein array und wie muss ich sie einzel ansprechen.

    Viele Grüße

    Werner