Ich habe nach einer Lösung gesucht, um einen Verzeichnispfad für ein Feature für meine Anwendung programmatisch zu überschreiben.So erstellen Sie eine benutzerdefinierte Aktion des Typs wix
Ich fand heraus, dass ich eine Art-35-Aktion (https://msdn.microsoft.com/en-us/library/windows/desktop/aa368093(v=vs.85).aspx) benötigen
ich das Internet für eine Weile gesucht, aber nirgends finde ich, wie solche benutzerdefinierte Aktion in C# erstellen.
Meine aktuelle benutzerdefinierte Aktion wie folgt aussieht:
<CustomAction Id="CheckForSynergyInstallation"
Return="check"
Execute="immediate"
BinaryKey="Real.CustomActions"
DllEntry="GetVersionInformation" Directory="SYNERGY_FEATURE_FOLDER" />
und die C# -Code für sie wie folgt aus:
var synergyFolder = new FileInfo(exactSynergyVersionConfigurationFile).Directory.FullName;
log.Info($"Synergy Folder set to {synergyFolder}");
session["SYNERGY_FEATURE_FOLDER"] = synergyFolder;
Danke. Ich wusste nicht, dass eine benutzerdefinierte Aktion vom Typ 35 nur eine Implementierung war und dass ich sie nicht selbst erstellen musste. –