[%USERPROFILE]
ist eine gültige Umgebungsvariablenreferenz, aber ich denke nicht, dass sie in diesem Kontext verwendet werden kann, da dieser Kontext nicht formatted ist. Details finden Sie unter Directory Table.
Beachten Sie, dass, wie in den Kommentaren erwähnt, %USERPROFILE%
wahrscheinlich der falsche Ort für alle Dateien ist, die Sie möglicherweise installieren möchten. Erwägen Sie die Verwendung eines anderen predefined folder, wie AppDataFolder
, LocalAppDataFolder
oder PersonalFolder
.
Wenn Sie mit PersonalFolder
gehen, ich glaube, Sie nur, dass stattdessen verwenden können:
<Directory Id="PersonalFolder"> ... </Directory>
Wenn es keine zufriedenstellende vordefinierten Ordner-Eigenschaft ist, können Sie entweder ein type 51 oder eine type 35 benutzerdefinierte Aktion (je nachdem, ob Sie planen es vor oder nach der Einstellung von CostFinalize, um den Laufzeitwert Ihres Ordners auf [%USERPROFILE]
festzulegen. Diese benutzerdefinierten Aktionen formatieren den Wert, den sie verwenden. Stellen Sie sicher, einen ALL-CAPS-Namen zu verwenden, damit es zur Laufzeit festgelegt werden kann , wenn das Verzeichnis USERPROFILEFOLDER heißt:
<SetDirectory Id="USERPROFILEFOLDER" Value="[%USERPROFILE]"/>
<!-- or -->
<SetProperty Id="USERPROFILEFOLDER" Value="[%USERPROFILE]"/>
(Und vergessen Sie nicht irgendwo um die Aktion zu planen.)
http://stackoverflow.com/questions/17500373/wix-toolset-setting-a-property-to-user-profile-folder- Pfad-und-Programm-Dateien und http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Environment-variables-into-a-WIX-property-td5412818.html könnte von Interesse sein Sie. Ich habe [% USERPROFILE] noch nie gesehen und es sieht komisch aus. Cursorprüfung findet es nicht in den Wix-Dokumenten. Könnte nicht mehr gültig sein. – Will
Danke für deine Eingaben @Will Ich habe vergeblich versucht, was sie erwähnt haben. – bam500
Jeder Verweis auf den aktuellen Benutzer ist für Installationen pro Maschine nicht sinnvoll. Sind Sie sicher, dass Ihre Konfiguration pro Benutzer und nicht pro Computer erfolgt? (Und in jedem Fall ist es die falsche Sache, Ihre INI-Datei direkt in das Benutzerprofil zu legen, anstatt in den Anwendungsdatenordner des Benutzers. Windows ist nicht Linux!) –