Dies ist wahrscheinlich Batch-Skripting 101, aber ich kann keine klare Erklärung / Dokumentation finden, warum dies geschieht oder ob meine Problemumgehung tatsächlich die Lösung ist. Also im Grunde wird jede Terminologie oder Links zu guten Quellen geschätzt.
Ich habe also ein Programm, das ich über Batch-Skript (zusammen mit mehreren anderen Programmen) ausführen möchte. Es ist die einzige, in der exe
nicht in einem Program Files
-Ordner ist. Ich kann es so beginnen:
Aber ich bekomme einen Fehler in den folgenden Zeilen:
%Vor%So scheint es, dass das Programm nach seinen Einstellungsdateien von demselben Ort sucht, an dem das Stapelscript gestartet wird. Vorausgesetzt, dass ich endlich alles zum Laufen gebracht habe, indem ich folgendes gemacht habe:
%Vor%Das funktioniert gut, und es ist nicht das Ende der Welt, diesen Weg gehen zu müssen (nur eine zusätzliche Zeile), aber ich habe mich selbst davon überzeugt, dass ich aufgrund fehlender Grundkenntnisse etwas falsch mache.
Wer weiß oder kann mich darauf hinweisen, warum es so funktioniert?
Oh, und mache folgendes:
%Vor%macht gar nichts.
Danke,
Sie machen es perfekt: -)
Die ausführbare Datei sucht wahrscheinlich nach dieser Datei im "aktuellen Arbeitsverzeichnis", die eingestellt wird, wenn Sie vorher darauf "cd".
Sie können Ihr Arbeitsverzeichnis manuell einrichten, indem Sie eine Verknüpfung zu Ihrer Batch-Datei erstellen; Rechtsklick; Eigenschaften.
bearbeiten:
Sie können Ihr aktuelles Arbeitsverzeichnis auch mit dem Befehl start
festlegen:
bearbeiten:
Wenn Sie Parameter übergeben möchten, fügen Sie sie einfach wie in einer normalen Verknüpfung zum ausführbaren Dateinamen hinzu:
%Vor%oder
%Vor%Als Referenz wird die Syntax hier beschrieben: Ссылка .
Was passiert, ist, dass weirdmodule.exe
im "aktuellen Verzeichnis" nach der Datei .mdb
sucht. Sie können es möglicherweise über einen Befehlszeilenparameter oder eine andere Konfigurationsmethode (Registrierungs- oder INI-Datei) herausfinden, wo die .mdb
-Datei zu finden ist. Wie Sie den Speicherort angeben, hängt jedoch vollständig vom Programm weirdmodule.exe
ab.
Abgesehen davon ist Ihre aktuelle Problemumgehung wahrscheinlich das, wo Sie stecken geblieben sind.
Was Ihr Problem mit start.exe
angeht ... Das start.exe
-Programm hat das sehr, sehr seltsame Verhalten (bizarres Verhalten meiner Meinung nach), den ersten Parameter als den 'Titel' zu behandeln, der in das Fenster eingefügt werden soll wenn (und nur wenn) der erste Parameter in Anführungszeichen steht. Sie haben also ein paar Möglichkeiten:
Verwenden Sie keine Anführungszeichen, um das Programm anzugeben. Dies funktioniert für Sie, weil Sie keine Anführungszeichen benötigen (im Pfad sind keine Leerzeichen oder andere Sonderzeichen enthalten, für die ein Anführungszeichen erforderlich wäre):
%Vor%Geben Sie einen leeren Titel (oder einen anderen String) als ersten Parameter an. Das ist etwas, was Sie tun müssten, wenn Ihr Pfad Zitate benötigt:
%Vor%Tags und Links command-line windows batch-file