Ich versuche, dem Kontextmenü des Windows-Ordnerhintergrunds einen Eintrag hinzuzufügen. Der folgende „Befehlswert“ funktioniert:
"P:\Projects\GuardianBlade\OfStrangerFlames\Development\Project\Bin\MakeManifest.exe"
Es führt MakeManifest erfolgreich aus (ein kleines Entwicklungstool, an dem ich für mein eigentliches Programmierprojekt arbeite).
Ich möchte jedoch Folgendes tun:
"P:\Projects\GuardianBlade\OfStrangerFlames\Development\Project\Bin\MakeManifest.exe" -root="%1"
Aber das funktioniert nicht. Das hier auch nicht:
"P:\Projects\GuardianBlade\OfStrangerFlames\Development\Project\Bin\MakeManifest.exe" "-root=%1"
Mein Ziel ist es, das Programm MakeManifest.exe auszuführen und zu empfangeneinsBefehlszeilenargument im Format:
-root="the/directory/right-clicked/in/"
Ich möchte, dass die Anführungszeichen um den Verzeichnispfad herum an MakeManifest übergeben werden und dass das Ganze (-root="das/Verzeichnis/in/das/mit/der/rechten/ Maustaste/geklickt/wurde") als ein Argument.
Andernfalls würde ich mich mit-Wurzelals ein Argument übergeben, undder/Verzeichnis/Pfad(ohne Anführungszeichen, aber als ein Argument) als zweites Argument übergeben. Ich bekomme beides nicht zum Laufen.
Alle meine Versuche führen zu dieser Fehlermeldung:
"Dieser Datei ist kein Programm zum Ausführen dieser Aktion zugeordnet. Installieren Sie ein Programm oder erstellen Sie eine Zuordnung in der Systemsteuerung unter „Standardprogramme“, falls bereits eines installiert ist."
... als ob es versuchen würde, herauszufinden, welches Programm den gesamten Befehl als Dateipfad ausführen soll.
Auch hier funktioniert das Festlegen des Befehls ohne Argumente einwandfrei.
Wie soll ich das machen?
Antwort1
Verwenden Sie %V
anstelle von %1
.
Weitere Informationen zu Shell-Befehlsvariablen wie %V und %1 finden Sie unterdiese Frage.