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.

40

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
33
@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

?

Wie kann man Dateien in Dateien verstecken und .exe in einer anderen .exe?

Hey! Meine frage heute wäre wie kann man Dateien in anderen Dateien verstecken? Ich weiß es geht über die Cmd schon mal aber ich möchte gerne das diese auch ausgeführt werden. Meine eig. frage ist also ich möchte ein Bild in einer .bat Datei verstecken die ich in eine .exe umgewandelt habe. Also die .bat zur .exe weshalb aber hier kein Datei Pfad vorhanden ist. Ich weiß man kann es verstecken muss es aber auch wieder rausholen aber ich möchte halt das sobald man die .exe (.bat) ausführt das sich halt das Programm auf der cmd. öffnet und das Bild. Man kann das Bild auch zwar über die CMD öffnen aber dafür muss der Datei Pfad vorhanden sein den es hier nicht gibt. Und noch eine frage wie kann ich .exe Dateien in anderen .exe Dateien verstecken also das halt das Hauptprogramm installiert wird aber im Hintergrund das andere auch ausgeführt wird. Sry. wegen meiner ungenauen Formulierung aber ich weiß net wie ich es anders beschreiben soll. Wenn ich Fehler drin habe zB. Logische Fehler bitte ich das zu entschuldigen. Dritte Frage was ist die Mehrzahl von .exe?

MFG: BenXD10

...zur Frage

Batch Leerzeichen in einer Variable durch . ersetzen?

Hallo liebe Community,

Ich habe mal wieder ein Batch Problem.

mein script

set /p top=?

find /i ":%top%" %userprofile%\Desktop\die .bat datei>NUL

if errorlevel 1 goto fragen

goto %top%

:fragen

echo :%top%>>%userprofile%\Desktop\die .bat datei

Das Programm soll wenn der Bezugspunkt existiert zu ihm gehen,wenn er nicht existiert ihn erstellen.

wenn %top% "hallo welt" ist, wird im script ":hallo welt" eingefügt.

Wenn %top% "hallo du" ist, wirt ":hallo du" eingefügt.

Nun ist das Problem das aufrufen.

So dass wenn %top% "hallo du" ist steht da goto hallo du.

Batch realiesiert aber nur goto hallo und geht zu :hallo welt

Nun ist meine Frage ob es eine Möglichkeit gibt,alle Leerzeichen aus %top% durch punkte zu ersetzen oder zu entfernen.

Danke im Vorraus

...zur Frage

Was möchtest Du wissen?