Probleme mit "Run()" und "Runwait()"

  • Hallo, ich versuche ein Java-Programm über die Run-Funktionzu starten. Der Aufruf sieht ungefähr so aus:

    RunWait("java -jar test.jar -a 78 -b 83 eingabe.txt ")

    Das Problem ist, es tut sich nichts. Auch keine Fehlermeldung. Das Java-Programm befindet sich im Scriptverzeichnis. Wenn ich den Befehl direkt auf der Komandozeile aus dem Scriptverzeichnis heraus eingebe, geht es.

    Hat jemand einen Rat?

    Danke

    igillan

    3 Mal editiert, zuletzt von igillan (15. Januar 2009 um 10:37)

  • Hm also ich habs mal probiert. Ohne zusätzliche Parameter geht es bei mir.
    Versuche es mal so:

    [autoit]


    ShellExecute("java", "-jar test.jar -a 78 -b 83 eingabe.txt")

    [/autoit]
  • Ein Java-Programm habe ich bisher noch nicht gestartet und kann keinen 100%igen Rat geben.

    Um DOS (Konsolen) Kommandos auszuführen, sollte man folgendes ausprobieren: Run(@ComSpec & " /c " & 'commandName', "", @SW_HIDE)

    oder

    ; Datei öffnen
    ShellExecute("DeineDatei")

    Habe ich schon probiert.. :(

    Hm also ich habs mal probiert. Ohne zusätzliche Parameter geht es bei mir.
    Versuche es mal so:

    [autoit]


    ShellExecute("java", "-jar test.jar -a 78 -b 83 eingabe.txt")

    [/autoit]

    Geht leider auch nicht. Ich habe mal den Befehl in eine MsGBox ausgeben lassen. Die Synthax stimmt 100%. Gebe ich den gleichen Befehl auf der kommandozeile ein , geht's! Bloß aus einem Script heraus geht's nicht. ?(
    igillan

  • du solltest vielleicht mal versuchen den Pfad zur java.exe und zur jar Datei mit anzugeben und den Befehl mit

    [autoit]

    Run(@ComSpec & " /c " & 'commandName', "", @SW_HIDE)

    [/autoit]


    zu starten, denn der beherscht auf jeden Fall auch das Mitschicken von Argumenten.

    Beispiel

    Spoiler anzeigen
    [autoit]

    Run(@ComSpec & " /c " & 'shutdown -s -t 5000', "", @SW_HIDE)
    sleep(500)
    Run(@ComSpec & " /c " & 'shutdown -a', "", @SW_HIDE)

    [/autoit]
  • Also bei mir geht's nicht. Ich versuche dieses Programm über eine GUI zu starten. Nachdem ich alle Parameter über ein Grafikformular gesammelt habe, soll die txt2jpg.jar ausgeführt werden. txt2jpg.jar befindet sich im Scriptverzeichnis. Ein Aufruf in dieser Form

    Code
    RunWait("java -jar txt2jpg.jar -w "&$Bildbreite&" -h "&$Bildhoehe&" "&$Quelldatei&" prefix","", @SW_HIDE)

    funktioniert nicht. Wenn ich mal versuche so

    Code
    java -jar txt2jpg.jar -w 720 -h 576 C:\test.txt testjpg

    zu starten passiert auch nichts. Gebe ich diesen Befehl auf der Kommandozeile ein, wird die JPEG-Datei erstellt. die oben genannten Methoden mit run(@ComSpec & " /c " .....u.s.w. und ShellExecute haben auch keinen Erfolg gebracht.

    Ich bin ratlos....

    igillan

  • Run(@ComSpec & " /c " & '"C:\Program Files\Java\jre1.6.0_05\bin\java.exe" -jar C:\txt2jpg.jar -w 720 -h 576 C:\wepkeys.txt testjpg', "", @SW_HIDE)

    So klappts einfach Pfade anpassen und viel Spaß.

    Zitat

    ... schon passiert...

    igillan


    War in der Readme verlinkt aber trotzdem danke :)

    • Offizieller Beitrag

    1. Post bearbeiten und auf gelöst setzen .

  • Hallo, jetzt gibt es doch noch ein Problem. Hier ein auszug aus dem Quellcode:

    Folgendes Problem: Button2 ist mein "Startbutton". Sobald ich ihn klicke, geht die MSGBox korrekt auf (in der Ausgabe stimmen die Pfadangaben noch nicht) . Aber der folgende RUN-Befehl wird nicht ausgeführt. Die Synthax stimmt aber, denn wenn ich den Befehl in eine neue AU3-Datei kopiere und diese ausführe geht es problemlos.

    Kann bitte noch mal jemand helfen?

    igillan

  • Füg mal nach dem Run eine weitere Zeile ein:

    [autoit]

    MsgBox(0, "", @error)

    [/autoit]


    Ich bin mir ziemlich sicher, dass auch diese Msgbox angezeigt wird.

    Ja, sie wird angezeigt. Fehlercode: 0 , also erfolgreich, aber die Run-funktion wird nicht ausgeführt.

    igillan

  • Sicher ? such mal nach der testjpg vielleicht legt er die bloß in nem Ordner ab wo du nicht kuckst.

  • Alles klar, wenn ich die RUN-funktion direkt starte landet das JPG im Scriptdir. Wird die Funktion aus der while-Schleife heraus gestartet, landet das Bild im gleichen Verzeichnis wie die Textdatei (warum auch immer) . Manchmal sieht man den Wald vor lauter Bäumen nicht.

    Vielen Dank noch mal für die Geduld

    igillan