Wie kann ich einen Teilpfad von einer Umgebungsvariablen bei der Kompilierung mit dem File
Befehl zu verwenden, extrahierenVerwenden Teil einer Umgebungsvariablen Pfad Dateien in andere Verzeichnisse hinzufügen
sagen Lässt meine Umgebungsvariable ist:
MY_ENV_VAR
Können sagen, ihr Wert ist:
"C:\Program Files\Program Name\Stuff\New Stuff"
ich die folgende Datei in meinem Skript enthalten sein sollen:
"C:\Program Files\Program Name\Other Stuff\myFile.txt"
Deshalb möchte ich tun:
StrCpy $0 "$%MY_ENV_VAR%" -16
File "$0\Other Stuff\myFile.txt"
Der obige Code wird nicht funktionieren wie $0
und StrCpy
zum Zeitpunkt der Kompilierung nicht verfügbar sind. Wie kann ich mein gewünschtes Ergebnis erzielen?
Ich kann nicht hart Code der Pfad zu myFile als das Installationsverzeichnis ist wahrscheinlich von Benutzer zu Benutzer gefunden
Die einzige Lösung zu ändern, haben verwendet eine sekundäre Skript eine .nsh Datei mit einem definieren, um den Pfad zu erstellen . Dies ist jedoch hässlich und erfordert auch, dass der Benutzer zwei verschiedene .nsi-Skripte kompiliert.
Alternativ, wenn es eine Syntax, die ich aus dem ‚Datei‘ Referenz verpasst haben, die einen nach oben Verzeichnis wie „../“ etc erlaubt – Danaldo