Batch-Dateien (.bat)… was bedeutet set game =% 1%? Diese Batchdatei funktioniert nicht richtig

1

Diese Batch-Datei soll der Variablen "game" den Pfad einer Disc-Image-Datei zuweisen und dieses Image dann mit einem Programm einbinden, das Daemon Tool's aufruft. Dann soll ein Programm namens SSF das gemountete Disk-Image laden.

Leider lädt diese Batch-Datei nur das Image, das bereits gemountet ist. Ich versuche, jede Zeile in dieser Datei zu verstehen, und ich kann keine Hilfe für die Zeile finden. Set game =% 1%. Hier ist der Inhalt der Batch-Datei. Vielen Dank für jede Hilfe, die Sie zur Verfügung stellen können.

@echo off
set game=%1% 
set daemon="C:\Program-blahblah-\DTLite.exe"    
set emu="C:\Users-blahblah-\SSF_TestVer\SSF.exe"    
%daemon% -mount 0, %game%    
start /wait "" %emu%    
%daemon% -unmount 0 
HellfireEternal
quelle
In dieser Frage geht es also darum, dass Sie möchten, dass es mit dem Daemon funktioniert und nicht mit einer anderen Lösung, richtig? Ich gehe speziell davon aus, dass Sie keine Antwort mit einem anderen Lösungsvorschlag anstelle eines Daemons suchen, richtig? Das ist meine Interpretation, um nur zu hören, ob Sie dies bestätigen oder auf andere Weise klären, nur für den Fall.
Pimp Juice IT
Ich habe die .bat-Datei zum Laufen gebracht. Gibt es jedoch einen Befehl zum Schließen des Fensters UND zum gleichzeitigen Starten von% emu%? Es funktioniert prima, aber wenn ich das Fenster von alleine schließen könnte, anstatt nach dem Schließen des Programms% emu%, wäre es PERFEKT! Vielen Dank!
HellfireEternal
Versuchen Sie, IF NOT DEFINED MINIMIZED SET MINIMIZED=1 && START "" /MIN "%~dpnx0" %* && EXITden Anfang des Skripts zu setzen, und führen Sie es dann erneut aus, um festzustellen, ob dies hilfreich ist. Sehen Sie meine Antwort hier mit dieser Lösung und etwas Beschreibung.
Pimp Juice IT
Andernfalls können Sie dies mit dem Taskplaner ausführen, um das Skript mit der Run with highest privilegesausgewählten Option auszuführen . Sehen Sie sich meine Antwort hier an, aber Sie könnten SCHTASKS /Run /TN "\path\JobName"vielleicht sogar die Methode verwenden, um sie auszuführen. Es gibt einige Ansatzpunkte, mit denen Sie testen können, die mir schnell einfallen, aber ich habe meine Antworten mit zutreffenderen Details versehen.
Pimp Juice IT

Antworten:

1

Ich nehme an, das %1%ist ein Fehler und sollte sein, %1und Sie sollten die Batch-Datei mit einem Parameter wie dem Namen des Spiels ausführen. zB C:\blah>thebatfile thegameDas wird sein , was %1den ersten Parameter auf , dh bezieht. Sie können jede Variable mit echo %whatevervar%oder echo %1und anzeigen. echo %daemon% Sie können die @ECHO OFFLinie entfernen , um mehr über die aktuellen Ereignisse zu erfahren. Und in der Batch-Datei können Sie jederzeit pauseFolgendes tun (wenn Sie sie ausführen, wird sie nach einer Zeile angehalten, und Sie können Strg-C zum Beenden ausführen), oder Sie können eine Zeile verwenden, die besagt exit /b , dass die Batch-Datei vorzeitig beendet werden soll.

Obwohl ich denke, dass dies Ihre Frage zu% 1 beantworten könnte, hilft es Ihnen möglicherweise nicht weiter, als Ihre Frage zu beantworten. Über Ihre Frage hinaus - Woher beziehen Sie diese Batch-Datei? Es können verschiedene Probleme auftreten, die von den Besonderheiten der ausführbaren Dateien abhängen, deren Ausführung Sie unterstützen.

Sie sollten Dämon-Tools besser meiden. Früher war es jahrelang großartige Software, aber dann fügten sie Malware hinzu. Http://forum.daemon-tools.cc/showthread.php?t=30115 und https://www.reddit.com/r/ pcmasterrace / comments / 2yt9gb / be_aware_daemon_tools_lite_installs_malware_adware / Ich schlage vor, stattdessen ein virtuelles Clonedrive zu verwenden.

Wenn Sie ein Image mounten möchten, müssen Sie zunächst auf eine Batch-Datei verzichten. Und um das Spiel zu starten, starte es nach dem Mounten des Images ohne Batch-Datei.

Sobald Sie es manuell tun können, können Sie versuchen, es mit einer Batch-Datei zu tun.

barlop
quelle
Ich habe diese Batch-Datei aus den Foren des von mir verwendeten Programms erhalten. Es heißt Launchbox und ist ein Frontend für Emulatoren. Es ist eine GUI, in der Sie mehrere Spieledateien ablegen und die Programme auswählen, mit denen die Spiele gestartet werden sollen. Es funktioniert prima, aber dieser spezielle Emulator, SSF, kann keine eigenen Image-Dateien lesen. Sie müssen stattdessen von einem CD-Laufwerk (oder einem virtuellen Laufwerk) gelesen werden. Und hier beginnt das Problem.
HellfireEternal
@HellfireEternal Ja, aber Sie benötigen keine Batch-Datei, um diese Dinge zu erledigen. Sie können ein Image manuell einbinden. Und Sie können den Emulator manuell starten. Alles, was eine Batch-Datei kann, kann manuell erfolgen. Einige alte Programme benötigen zum Beispiel eine CD im Laufwerk oder wie in Ihrem Fall ein ISO, damit es ein CD-Laufwerk erkennt. Dies kann manuell erfolgen.
Barlop
Ich habe diese Batch-Datei aus den Foren des von mir verwendeten Programms erhalten. Es heißt Launchbox und ist ein Frontend für Emulatoren. Es ist eine GUI, in der Sie mehrere Spieledateien ablegen und die Programme auswählen, mit denen die Spiele gestartet werden sollen. Es funktioniert prima, aber dieser spezielle Emulator, SSF, kann keine eigenen Image-Dateien lesen. Sie müssen stattdessen von einem CD-Laufwerk (oder einem virtuellen Laufwerk) gelesen werden. Und hier beginnt das Thema. Ich ging davon aus, dass das eingestellte Spiel =% 1% den Dateipfad von Launchbox abrief. Das Problem mit der Batch-Datei scheint darin zu liegen, den Dateipfad der Image-Datei abzurufen. Irgendwelche Ideen?
HellfireEternal
Ich denke, das Spiel ist die ISO. Sie mounten das Spiel. Dann führen Sie den Emulator aus.
Barlop
Der Link ist forums.launchbox-app.com/topic/… wenn das hilft
HellfireEternal