Batch Datei - Programm ausführen - Problem?

4 Antworten

Hast Du es mal mit dem "START"-Kommando versucht? Dein Programm benötigt wohl (s)ein Working Directory. Mit "START" kannst Du das als Parameter /D mitgeben, also in etwa so:

help start
Starts a separate window to run a specified program or command.

START ["title"] [/D path] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
      [/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]
      [/NODE <NUMA node>] [/AFFINITY <hex affinity mask>] [/WAIT] [/B]
      [command/program] [parameters]

    "title"     Title to display in window title bar.
    path        Starting directory.
<- SNIP ->

START /D my_working_directory my_working_directory\xyz.exe

Das wäre dann auch flexibel, d.h. Du könntest my_working_directory über was auch immer einlesen, in einer Varaible speichern und beim Ausruf entsprechend mitgeben. einzige Voraussetzung: my_working_directory ist tatsächlich richtig, d.h. existiert und enthält Deine exe ...

Ich mache sehr oft sowas. In Deinem Fall würde ich mit cd in das Verzeichnis des Programmes wechseln und dort starten.

@echo off
c:
cd \Programs\...\      (Pfad der exe)
call xyz.exe

Der Grund liegt vermutlich darin, dass zur exe noch einige dll gehören.

Wenn das ein Programm ist, das von überall gestartet werden können soll (z.B. ein Editor), kannst den Pfad auch in der Systemvariablen %path% erweitern.

WillTell 
Fragesteller
 10.02.2018, 12:50

danke hab es sehr ähnlich nun umgesetzt,weisst du zufällig warum die cmd wartet bis man das Programm wieder schließt um den nächsten Befehl zu starten. Möchte dass nach dem Starten des Programms mit goto es wieder zurück. Die cmd ist solange schwarz bis ich das gestartete Programm wieder schließe. geht das iwie.

0
wotan38  11.02.2018, 21:01
@WillTell

Das geht eigentlich ganz normal, bei mir jedenfalls. Ich schau mir das morgen mal an und melde mich nochmal. So wie ich das mache, muss ich immer als letzten Befehl exit angeben, damit das Fenster automatisch schließt. Ansonsten bleibt es offen.

0

Gehts mit

START "" /D "E:\Daten\1\2\3\" xyz.exe

?

E:/Daten/1/2/3/xyz.exe eingeben ?

WillTell 
Fragesteller
 09.02.2018, 03:18

nee, das geht nicht

0
gforced  09.02.2018, 03:55

wieso

0