Batch CMD beenden wenn exe beendet wird?

EMPIRE2K

Ensign
Registriert
Apr. 2015
Beiträge
139
Hallo ich hab eine kleine batch Datei mit folgenden Inhalt

Code:
start "" "C:\Program Files (x86)\Origin Games\FIFA 16\fifa16.exe"
pause

jetzt hätte ich gerne ein befehl wenn es sowas gibt, der die batch schließt wenn fifa16.exe geschlossen wird!

Gibt es sowas?
 
Schon versucht Zeile 2 (pause) zu entfernen?

Was soll denn das Skript überhaupt bezwecken? Eine Verknüpfung wäre eventuell sinnvoller.
 
das pause dient dazu damit es nicht schließt!

solange es offen ist zeigt Steam das ich in Fifa drin bin!

Aber wenn ich Fifa schliesse soll auch die CMD schliessen weil ich dann ja nicht mehr spiele es aber noch angezeigt wird!
 
Hab gerade ein wenig rumprobiert.

Versuch mal eine bat Datei nur (ohne start und pause) mit:

C:\Program Files (x86)\Origin Games\FIFA 16\fifa16.exe

zu erstellen und auszuführen.
Entspricht dies deiner Vorstellung?
 
Dann startet er das spiel aber die cmd schliesst sofort!

die soll ja so lange laufen wie die exe
 
Code:
START "" /wait "C:\Program Files (x86)\Origin Games\FIFA 16\fifa16.exe"

Das Wait muss natürlich nach dem Title kommen!
 
Zuletzt bearbeitet:
Auch das funktioniert leider nicht!

Edit: Geht doch zB mit notepad muss das mit fifa nochmal genau checken!
Ergänzung ()

OK Prinzipiell geht es so!

Aber mein Problem löst es leider noch nicht.

Problem ist Fifa startet den Launcher und dann das spiel! gleiches bei Battlefield die exe startet den Browser
 
Nun, wenn die FIFA16.EXE erst noch eine weitere Anwendung startet, die das eigentliche Spiel ist, dann musst du eben diese manuell starten, anstelle der FIFA16.EXE.

Du könntest uns aber auch verraten, was genau du vor hast. Dann findet sich vlt. eine elegantere Lösung für dein Problem. Denn was ich nicht verstehe ist, warum du die CMD offen brauchst, obwohl du ja vordergründig spielst. Also wozu das zwecklose zweite Fenster mit der Kommandozeile im Hintergrund (die du eh nicht bedienen kannst, da sie ja auf die Terminierung des Prozesses wartet und keine Eingaben entgegen nimmt)? Ich verstehe den Hintergrund einfach nicht.

Und sobald ich soetwas lese, muss ich unweigerlich an Mogeleien denken. Und sei es auch nur, um die "gespielte Zeit" in Titeln mittels Autostart etc. pp. künstlich zu verlängern und so an Boni zu kommen.
 
Das geht bei Fifa nicht es geht nur über den Launcher und Battlefield auch über die exe die den Browser mit battlelog öffnet!

Warum ich das mache?

Ich hab ein Gaming PC der nur am TV angeschlossen ist praktisch als Konsole! als Oberfläche benutzte ich Steam Big Pictures.

Da Fifa und battelfield keine Steam Spiele sind sondern Origin musste ich die per "fremdes Spiel" einfügen! das geht aber nicht da wenn ich Fifa starte der Launcher in den Hintergrund verschwindet! nur über die CMD beibt der Launcher im vordergrund und ich kann Fifa Starten!

Warum die CMD offen bleiben soll? weil Ich eben die CMD bei Steam als "Fremdes Spiel" eingefügt habe! und so lange die offen ist sehen alle meine freunde das ich Fifa spiele oder eben battlefield! verschwindet die CMD bin ich nur Online.
 
Zuletzt bearbeitet:
Verwende AutoHotKey dafür, würde dann so ausehen:

Code:
Run, "pfadZuFifa"
WinWait, FenstertitelVonFifa
WinWaitClose
Exit​

​Das feine dabei ist, das Script kannst dann auch gleich zu einer .exe kompilieren und dann in Steam einfügen.
 
Das müsste funktionieren.

Code:
@echo off
SETLOCAL EnableExtensions
set EXE=fifa16.exe
start "" "C:\Program Files (x86)\Origin Games\FIFA 16\fifa16.exe"
:ABFRAGE
FOR /F %%x IN ('tasklist /NH /FI "IMAGENAME eq %EXE%"') DO IF %%x == %EXE% goto LAEUFT
goto ENDE
:LAEUFT
echo Programm läuft gerade
timeout 5
goto ABFRAGE
:ENDE
echo Programm läuft nicht mehr. Batch wird beendet.
timeout 3
Exit
 
Zuletzt bearbeitet:
Top das funktioniert genau so wie ich es wollte!

Was jetzt das ganze noch abrunden würde wenn man noch ein taskkill dranhängen könnte wenn er die exe schließt um den Launcher mit zu schließen.
 
Das ist einfach.


Code:
@echo off
SETLOCAL EnableExtensions
set EXE=fifa16.exe
start "" "C:\Program Files (x86)\Origin Games\FIFA 16\fifa16.exe"
:ABFRAGE
FOR /F %%x IN ('tasklist /NH /FI "IMAGENAME eq %EXE%"') DO IF %%x == %EXE% goto LAEUFT
goto ENDE
:LAEUFT
echo Programm läuft gerade
timeout 5
goto ABFRAGE
:ENDE
echo Programm läuft nicht mehr. Batch wird beendet.
taskkill /F /IM LAUNCHER.exe
timeout 3
Exit


Bei der zeile
"taskkill /F /IM LAUNCHER.exe"
musst du "Launcher.exe" passend umbenennen. Weiss grad nicht wie die .exe des launchers bei Origin genau heisst.
 
Perfekt :)

Kann man einer CMD eigentlich ein Tastatur befehl geben das nochmal Enter gedrückt wird?

so müsste ich auf den Launcher nicht "Start" drücken!
 
EMPIRE2K schrieb:
Kann man einer CMD eigentlich ein Tastatur befehl geben das nochmal Enter gedrückt wird?
Nein. Wenn, käme es auch eh in der Konsole an, weil sie die Nachricht selbst annimmt. Um eine Nachricht an ein anderes Fenster zu schicken, ist größerer Aufwand erforderlich. Gibt aber Tools, die das recht einfach für einen machen.
 
Brauche ich ja jetzt nicht mehr es funktioniert doch! nur ein enter wäre nicht schlecht kann man aber glaub ich noch mit einer vbs lösen die man über die cmd starten lässt

Probleme hab ich nur noch mit Battlefield!

Da Chrome öffnet und man ers was im Serverbrowser raussuchen muss. dann startet BF4 und Hardline auch immer Minimiert :(
 
Zuletzt bearbeitet:
Zurück
Oben