evinben
Goto Top

In Batch !Ausführen in! erzwingen, wo das zu startende Programm ausgeführt werden soll.

Hallo,

wie kann ich schaffen, dass das Programm „MeinProgramm“ in genau dem Verzeichnis ausgeführt wird, wo dieses installiert ist?
Ich habe folgendes bisher ausprobiert, dass aber leider nicht funktioniert:
cd \ "C:\Programme\MeinProgramm"
start "C:\Programme\Mein Programm"\Verwaltung.exe" /profil evinben
Per einer Verknüpfung zu der exe-Datei funktioniert das Vorhaben problemlos: Unter Eigenschaften der Verknüpfung trage ich einfach unter „Ziel:“ den vollständigen Pfad "C:\Programme\Mein Programm"\Verwaltung.exe" /profil evinben ein. Unter "Ausführen in" trage ich nur das Verzeichnis ein ("C:\Programme\MeinProgramm"). So funktioniert es und das Programm wird in dem Verzeichnis ausgeführt, wo dieses auch installiert ist und es greift auf meine dort abgelegten Profileinstellungen zu. Aber wie kann in einer Batch-Datei die Funktion „Ausführen in“ umgesetzt werden? Eine Verknüpfung zu der Batch-Datei selbst anzulegen und genauso analog fortzufahren funktioniert es natürlich. So eine Lösung - via eine Verknüpfung - kann ich leider nicht auf Dauer benutzen. Daher ist meine Frage: Wie wird in der Batch-Datei selbst erzwungen, wo das zu startende Programm ausgeführt werden soll?

Vielen Dank für eure Hilfe.
Kommentar vom Moderator Biber am 10.10.2010 um 17:08:27 Uhr
Beitrag auf "Abgehakt" gesetzt.

Content-Key: 152324

Url: https://administrator.de/contentid/152324

Ausgedruckt am: 29.03.2024 um 06:03 Uhr

Mitglied: bastla
bastla 04.10.2010 um 16:10:50 Uhr
Goto Top
Hallo evinben!

Verwende einfach
cd /d "%~dp0"
um den Ordner, in welchem sich die Batchdatei befindet, zum aktuellen Ordner zu machen ...

Grüße
bastla
Mitglied: miniversum
miniversum 04.10.2010 um 16:36:47 Uhr
Goto Top
Dafür gibts beim Startbefehl den Parameter /D

start "" /D "C:\Programme\Mein Programm" "C:\Programme\Mein Programm\Verwaltung.exe" /profil evinben
Mitglied: evinben
evinben 08.10.2010 um 13:47:18 Uhr
Goto Top
Hi, vielen dank euch. Ihr seid echt hilfsbereit. Ich glaube meine Fragestellung oben ist nicht vollständig. Ich versuche es noch mal:
Wenn die Batch-Datei in dem Installationsverzeichnis des auszuführenden Programms sich befindet, dann funktioniert es – das ist aber nicht mein Vorhaben. Mein Ziel ist die Batch-Datei außerhalb zu starten: Wie soll in der Batchdatei erzwungen werden, wo das zu startende Programm ausgeführt werden soll? Die Batch-Datei ist ja nicht in dem Installationsverzeichnis und unter Umständen nicht auf dem internen Datenträger. Also genau die Funktion „Ausführen in“, die unter Eigenschaften einer Verknüpfung zu finden ist, wird gesucht. So eine normale Verknüpfung muss nicht zwingend in dem Installationsverzeichnis sein und kann mit „Ausführen in“ ganz genau bestimmen, wo das Programm ausgeführt werden soll.
Ich habe eure Lösung soeben extra noch mal ausprobiert (also die Batch-Datei einfach vom Desktop aus gestartet) und es taucht logischerweise folgende Fehlermeldungen auf:
„D/“ konnte nicht gefunden werden. Stellen Sie sicher, dass Sie den Namen richtig eingegeben haben und …
Danke euch für die Hilfe den für das Vorhaben notwendigen Befehl mitzuteilen.
Mitglied: bastla
bastla 08.10.2010 um 15:45:25 Uhr
Goto Top
Hallo evinben!
„„D/“ konnte nicht gefunden werden.
... erhalte ich auch als Ergebnis, wenn ich "D/" anstelle von "/D" verwende - ansonsten funktioniert miniversums Vorschlag bei mir ...

Alternativ kannst Du auch vorweg die oben (nur füreinen anderen Pfad) vorgeschlagene "cd"-Variante verwenden:
cd /d "C:\Programme\MeinProgramm"
Grüße
bastla
Mitglied: evinben
evinben 09.10.2010 um 15:17:33 Uhr
Goto Top
O nein oder? Peinlich …. . Ihr habt mich also vom Anfang an richtig verstanden auch klar geantwortet.

KLASSE, es funktioniert.
Vielen Dank Bastla. Ich bin echt begeistert von eurer/deiner Bereitschaft. Wenn du mal vorbei kommst, bist du gerne eingeladenface-smile - im Vogtland um die Ecke (nö, nee, na ha…, weiß schoh).
Du hast mir schon oft geholfen. Kein Bedenken, die PC-Themen lassen wir dann beiseits.

Ein gutes Wochenende