Batch skript in auto it ausführen

  • Hallo
    also ich hab folgendes problem: ich hab ne batchdatei geschrieben und will das auto it diesen code ausführt nicht die batchdatei an sich sondern nur den code.

    ich habe gedacht das geht mit

    #include <Process.au3>

    _RunDos( "code der batchdatei" )

    aber irgendwie klappt das nicht
    Danke schonmal

    Cheers Marvin

    p.s. ich weis das meine Frage vlt. dumm erscheinen mag aber ich hab gerade erst mit auto it angefangen.

  • Zeig mir doch mal bitte dein Batch Code.
    Eigentlich dürfte das ohne Probleme so funktionieren.

    €dit: Oder noch besser gleich das Skript mit dem Code den du via _RunDos() ausführst.

    Einmal editiert, zuletzt von Yjuq (3. Januar 2015 um 08:54)

  • ok aber bitte nicht lachen ist halt laienhaft gemach ;)

    Spoiler anzeigen


    @ echo off

    If exist "C:\Dropbox\Server\befehle\minecraft on" goto onM
    If exist "C:\Dropbox\Server\befehle\tekkit on" goto onT

    echo "Version 1.01_01"

    :top

    If exist "C:\Dropbox\Server\befehle\start minecraft.befehl" goto startM
    If exist "C:\Dropbox\Server\befehle\stop minecraft.befehl" goto stopM
    If exist "C:\Dropbox\Server\befehle\restart minecraft.befehl" goto reM

    If exist "C:\Dropbox\Server\befehle\start tekkit.befehl" goto startT
    If exist "C:\Dropbox\Server\befehle\stop tekkit.befehl" goto stopT
    If exist "C:\Dropbox\Server\befehle\restart tekkit.befehl" goto reT

    If exist "C:\Dropbox\Server\befehle\restart server.befehl" goto reS

    If exist "C:\Dropbox\Server\befehle\start cmd extra.befehl" goto cmd

    ping -n 6 127.0.0.1 > null

    goto top

    :startM
    del "C:\Dropbox\Server\befehle\start minecraft.befehl"
    echo ON > "C:\Dropbox\Server\befehle\minecraft on"
    cd "C:\Dropbox\Server\Minecraft"
    start "" "C:\Dropbox\Server\minecraft\craftbukkit-1.7.9-R0.1.jar"
    goto top

    :stopM
    del "C:\Dropbox\Server\befehle\stop minecraft.befehl"
    del "C:\Dropbox\Server\befehle\minecraft on"
    taskkill /IM javaw.exe /T /F
    goto top

    :reM
    del "C:\Dropbox\Server\befehle\restart minecraft.befehl"
    taskkill /IM javaw.exe /T /F
    cd "C:\Dropbox\Server\Minecraft"
    start "" "C:\Dropbox\Server\minecraft\craftbukkit-1.7.9-R0.1.jar"
    goto top

    :startT
    del "C:\Dropbox\Server\befehle\start tekkit.befehl"
    echo ON > "C:\Dropbox\Server\befehle\tekkit on"
    cd "C:\Dropbox\Server\Tekkit"
    start "" "C:\Dropbox\Server\tekkit\launch.bat"
    goto top

    :stopT
    del "C:\Dropbox\Server\befehle\stop tekkit.befehl"
    del "C:\Dropbox\Server\befehle\tekkit on"
    taskkill /IM java.exe /T /F
    goto top

    :reT
    del "C:\Dropbox\Server\befehle\restart tekkit.befehl"
    taskkill /IM java.exe /T /F
    cd "C:\Dropbox\Server\Tekkit"
    start "" "C:\Dropbox\Server\tekkit\launch.bat"
    goto top

    :reS
    del "C:\Dropbox\Server\befehle\restart server.befehl"
    shutdown /r /f /t 30
    exit

    :onM
    cd "C:\Dropbox\Server\Minecraft"
    start "" "C:\Dropbox\Server\minecraft\minecraft_server.1.7.9.exe"
    goto top

    :onT
    cd "C:\Dropbox\Server\Tekkit"
    start "" "C:\Dropbox\Server\tekkit\launch.bat"
    goto top

    :cmd
    del "C:\Dropbox\Server\befehle\start cmd extra.befehl"
    start "" "C:\Dropbox\Server\cmd\cmd extra.cmd"
    goto top

  • Und das hier funktioniert nicht!?

    Spoiler anzeigen
    [autoit]

    #include <Process.au3>

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

    Global $sBatch = '@ echo off' & @CRLF & _
    'If exist "C:\Dropbox\Server\befehle\minecraft on" goto onM' & @CRLF & _
    'If exist "C:\Dropbox\Server\befehle\tekkit on" goto onT' & @CRLF & _
    'echo "Version 1.01_01"' & @CRLF & _
    ':top' & @CRLF & _
    'If exist "C:\Dropbox\Server\befehle\start minecraft.befehl" goto startM' & @CRLF & _
    'If exist "C:\Dropbox\Server\befehle\stop minecraft.befehl" goto stopM' & @CRLF & _
    'If exist "C:\Dropbox\Server\befehle\restart minecraft.befehl" goto reM' & @CRLF & _
    'If exist "C:\Dropbox\Server\befehle\start tekkit.befehl" goto startT' & @CRLF & _
    'If exist "C:\Dropbox\Server\befehle\stop tekkit.befehl" goto stopT' & @CRLF & _
    'If exist "C:\Dropbox\Server\befehle\restart tekkit.befehl" goto reT' & @CRLF & _
    'If exist "C:\Dropbox\Server\befehle\restart server.befehl" goto reS' & @CRLF & _
    'If exist "C:\Dropbox\Server\befehle\start cmd extra.befehl" goto cmd' & @CRLF & _
    'ping -n 6 127.0.0.1 > null' & @CRLF & _
    'goto top' & @CRLF & _
    ':startM' & @CRLF & _
    'del "C:\Dropbox\Server\befehle\start minecraft.befehl"' & @CRLF & _
    'echo ON > "C:\Dropbox\Server\befehle\minecraft on"' & @CRLF & _
    'cd "C:\Dropbox\Server\Minecraft"' & @CRLF & _
    'start "" "C:\Dropbox\Server\minecraft\craftbukkit-1.7.9-R0.1.jar"' & @CRLF & _
    'goto top' & @CRLF & _
    ':stopM' & @CRLF & _
    'del "C:\Dropbox\Server\befehle\stop minecraft.befehl"' & @CRLF & _
    'del "C:\Dropbox\Server\befehle\minecraft on"' & @CRLF & _
    'taskkill /IM javaw.exe /T /F' & @CRLF & _
    'goto top' & @CRLF & _
    ':reM' & @CRLF & _
    'del "C:\Dropbox\Server\befehle\restart minecraft.befehl"' & @CRLF & _
    'taskkill /IM javaw.exe /T /F' & @CRLF & _
    'cd "C:\Dropbox\Server\Minecraft"' & @CRLF & _
    'start "" "C:\Dropbox\Server\minecraft\craftbukkit-1.7.9-R0.1.jar"' & @CRLF & _
    'goto top' & @CRLF & _
    ':startT' & @CRLF & _
    'del "C:\Dropbox\Server\befehle\start tekkit.befehl"' & @CRLF & _
    'echo ON > "C:\Dropbox\Server\befehle\tekkit on"' & @CRLF & _
    'cd "C:\Dropbox\Server\Tekkit"' & @CRLF & _
    'start "" "C:\Dropbox\Server\tekkit\launch.bat"' & @CRLF & _
    'goto top' & @CRLF & _
    ':stopT' & @CRLF & _
    'del "C:\Dropbox\Server\befehle\stop tekkit.befehl"' & @CRLF & _
    'del "C:\Dropbox\Server\befehle\tekkit on"' & @CRLF & _
    'taskkill /IM java.exe /T /F' & @CRLF & _
    'goto top' & @CRLF & _
    ':reT' & @CRLF & _
    'del "C:\Dropbox\Server\befehle\restart tekkit.befehl"' & @CRLF & _
    'taskkill /IM java.exe /T /F' & @CRLF & _
    'cd "C:\Dropbox\Server\Tekkit"' & @CRLF & _
    'start "" "C:\Dropbox\Server\tekkit\launch.bat"' & @CRLF & _
    'goto top' & @CRLF & _
    ':reS' & @CRLF & _
    'del "C:\Dropbox\Server\befehle\restart server.befehl"' & @CRLF & _
    'shutdown /r /f /t 30' & @CRLF & _
    'exit' & @CRLF & _
    ':onM' & @CRLF & _
    'cd "C:\Dropbox\Server\Minecraft"' & @CRLF & _
    'start "" "C:\Dropbox\Server\minecraft\minecraft_server.1.7.9.exe"' & @CRLF & _
    'goto top' & @CRLF & _
    ':onT' & @CRLF & _
    'cd "C:\Dropbox\Server\Tekkit"' & @CRLF & _
    'start "" "C:\Dropbox\Server\tekkit\launch.bat"' & @CRLF & _
    'goto top' & @CRLF & _
    ':cmd' & @CRLF & _
    'del "C:\Dropbox\Server\befehle\start cmd extra.befehl"' & @CRLF & _
    'start "" "C:\Dropbox\Server\cmd\cmd extra.cmd"' & @CRLF & _
    'goto top'

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

    _RunDos($sBatch)

    [/autoit]

    Ich bin nicht so fit in Batch, daher führe ich den Code nicht aus da ich nicht genau weiß was da passiert.
    Teste du mal selber, wenn der Batch Code richtig geschrieben ist sollte das so laufen.

  • ich bin nicht sicher ob es klappt weil der glaub ich immer nur einmal "durchläuft" vielleicht weil das so unprofessionell mit den goto's geschrieben ist.
    das Programm an sich ist ne "Fernbedienung" für nen selbs gehosteten minecraft server

    €dit: ok er macht was aber nicht was er machen sollte

    Einmal editiert, zuletzt von BE__Happy (3. Januar 2015 um 10:20)

  • Prinzipiell würde ich erst einmal schauen ob das ohne den Aufruf von AutoIt klappt.
    Wenn das Programm so funktioniert wie soll, super! Ansonsten halt umschreiben.
    Ansonsten kannst du Batch Code via _RunDos() problemlos ausführen.

    Allerdings weiß ich nicht warum es sinnvoll sein sollte den Batch Code in AutoIt aufzurufen wenn du
    das Programm direkt in AutoIt schreiben könntest.

  • ja ich glaub ich schreibs dann auf auto it... das ding war halt nur das ich iwo gesehen hab das man die barch befehle irgendwie ausführen kann da ich halt bisher 0 plan von auto it habe.
    vielen lieben dank für deine hilfe soweit ;)

  • Jo, kein Problem. Falls Fragen zwischendurch auftauchen darfst du natürlich fragen.
    Kannst mir gerne auch eine private Nachricht senden. Habe drz. gute Laune :D